Java一次讀取文字檔案所有內容(已知編碼)

2021-06-17 21:23:48 字數 500 閱讀 7352

我們做文字處理的時候的最常用的就是讀寫檔案了,尤其是讀取檔案,不論是什麼檔案,我都傾向於一次性將文字的原始內容直接讀取到記憶體中再做處理,當然,這需要你有一台大記憶體的機器,記憶體不夠者……可以一次讀取少部分內容,分多次讀取。

讀取檔案效率最快的方法就是一次全讀進來,很多人用readline()之類的方法,可能需要反覆訪問檔案,而且每次readline()都會呼叫編碼轉換,降低了速度,所以,在已知編碼的情況下,按位元組流方式先將檔案都讀入記憶體,再一次性編碼轉換是最快的方式,典型的**如下:

public string readtostring(file file, string encoding) catch (filenotfoundexception e) catch (ioexception e)

try catch (unsupportedencodingexception e)

}這種方法的好處是讀取的內容可以徹底保持檔案的原貌,而且速度應該是最快的,因為只需要呼叫一次檔案訪問,字元編碼轉換也只需要一次。

Java一次讀取文字檔案所有內容

我們做文字處理的時候的最常用的就是讀寫檔案了,尤其是讀取檔案,不論是什麼檔案,我都傾向於一次性將文字的原始內容直接讀取到記憶體中再做處理,當然,這需要你有一台大記憶體的機器,記憶體不夠者 可以一次讀取少部分內容,分多次讀取。讀取檔案效率最快的方法就是一次全讀進來,很多人用readline 之類的方法...

Java讀取超大文字檔案

近日由於相關業務,需要讀取乙個將近1g的檔案,然後將符合條件的資料insert進資料庫。而執行完程式之後,最後寫入資料庫的資料是將近100w條,在linux系統下執行時間將近3個小時,操作量還是上了乙個相當的規模。由於之前沒有進行過超大檔案的讀寫,一開始以為需要使用分布式系統等複雜的操作才能進行。後...

讀取文字檔案

void ctestdlg onreadinfo cfile filewrite1 testwrite1.txt cfile modecreate cfile modewrite cfile filewrite2 testwrite2.txt cfile modecreate cfile modew...