C 唯讀模式讀取txt檔案內容

2021-10-05 15:33:47 字數 828 閱讀 2298

讀取txt檔案時,提示異常:

檔案「..\log\all_info.txt」正由另一程序使用,因此該程序無法訪問此檔案

原因:日誌檔案通過lognet生成的日誌檔案(c#使用log4net記錄日誌),自動任務一直在進行,檔案流沒有關閉。

所以獲取檔案內容時,會提示程序被占用。

嘗試方案:

通過system.io.file讀取 -- readalllines/readalltext等方法,報錯程序占用異常

var filecontent = file.readalltext(_filename);
通過filestream讀取資料

1

using (filestream fsread = new

filestream(_filename, filemode.open, fileaccess.read, fileshare.readwrite))

2

測試:ok

重點在fileshare這個引數,fileshare.readwrite 允許開啟檔案後,依然可以進行讀取。

也使用stringbuilder讀取行資料,通過filestream和streamreader處理資料流:

1

public

static

string readtextfromfilewithreadonlymode(string

filename)

213 content =sb.tostring();14}

15}16return

content;

17 }

讀取本地txt檔案內容

include include fopen函式是在當前目錄下開啟乙個檔案,其呼叫的一般形式為 1.檔案指標名 fopen 檔名,使用檔案方式 2.檔案指標名 必須是被宣告為file 型別的指標變 1 量 3.檔名 是被開啟檔案的檔名 4.使用檔案方式 是指檔案的型別和操作要求 5.檔名 是字串常量或...

vs讀取 txt檔案內容

vs讀取.txt檔案內容,首先確定.txt檔案的位置,string filename txt 開啟檔案 ifstream camfile filename,ios in 判斷是否為非空 if camfile 取.txt中的第一行內容 string s string newfilename while...

android 讀取txt檔案內容

android的res資料夾是用來儲存資源的,可以在res資料夾下建立乙個raw資料夾,放置在raw資料夾下的內容會被原樣打包,而不會被編譯成二進位制檔案,並且可以通過r檔案進行很方便地訪問。比如我們可以將更新資訊 版權資訊等放到txt檔案中,然後放到raw檔案中,然後很方便地進行訪問。在raw中放...