java讀檔案,寫檔案的通用方法

2021-09-20 15:56:51 字數 2386 閱讀 6359

在讀檔案和寫檔案的時候用到比較多的為:

file,fileinputstream,filereader,inputstreamreader,bufferedreader

在此先介紹上面幾個常用的類:

1.file類:很明顯,給乙個位址,就可以構造乙個file物件  

file file = new file("d:/test/opt1.txt");

2.fileinputstream:檔案位元組流,以位元組方式讀入資料,讀取出來的是byte陣列

filereader:檔案字元流,以字元方式讀入資料,

讀取出來的是char陣列或者string

inputstreamreader的直接子類

注意:這兩個類的構造方式均可以為 file物件,或者 表示位址的string

3.inputstreamreader類:api解釋為——位元組流通向字元流的橋梁,很明顯,是將位元組流轉為字元流

如果要改變編碼方式的話,則只能用這種方法,引數為inputstream和charset編碼方式

inputstreamreader reader =inputstreamreader(inputstream in, charset cs)

4.bufferedreader類:緩衝式讀取,提供了readline方法,讀取分行文字很適合

引數為reader物件:filereader或者inputstreamreader

所以上面可以總結出讀檔案的通用方法:

第一種,使用 bufferedreader 引數為inputstreamreader

fileinputstream inputstream = new fileinputstream("d:/test/gdcell.txt");  ---(1)

inputstreamreader ireader = new inputstreamreader(inputstream,"gbk");    ---(2)

bufferedreader br = new bufferedreader(ireader);

string data="";

while((data=br.readline())!=null)

其中,第(1)行可以用下面的代替

file file = new file("d:/test/gdcell.txt");

fileinputstream inputstream = new fileinputstream(file);

為什麼呢,因為上面提過了,fileinputstream可以為file物件,也可以為表示位址的string

第二種,使用 bufferedreader 引數為filereader

filereader reader = new filereader("d:/test/gdcell.txt");  -----(1)

bufferedreader br = new bufferedreader(reader);

string data="";

while((data=br.readline())!=null)

同樣,第(1)行也可以換成file物件的形式,但是此處使用reader就不能制定編碼格式了

寫檔案的方式和讀檔案差不多也差不多,類就不介紹了,僅貼出**,

string sql="sdfsdf";

fileoutputstream fileoutputstream = new fileoutputstream("d:/test/cell1.txt"); 

outputstreamwriter owriter = new outputstreamwriter(fileoutputstream);

bufferedwriter bw = new bufferedwriter(owriter);

bw.write(sql);

bw.flush();

記住,最後的bufferedwriter 一定要記得flush才能寫入檔案

讀取檔案,大概就這樣子了。

VBA 讀檔案和寫檔案方法

讀檔案 function readtextintoexcel path as string rowindex 11 open path for input as 1 do while not eof 1 line input 1,currline rowdataarr split currline,...

Python讀檔案 寫檔案

讀檔案 在相應的資料夾下建立乙個list.txt檔案。建立乙個包含檔案各行內容的列表 將要讀取的檔案的名稱儲存在變數filename中 filename list.txt with open filename as file obj 呼叫open 將乙個表示檔案及其內容的物件儲存到了變數file o...

python 檔案操作,讀檔案,寫檔案

讀取檔案的全部內容 def get f none try f open 致橡樹.txt r encoding utf 8 print f.read except filenotfounderror print 無法開啟指定的檔案 except lookuperror print 指定了未知的編碼 e...