在讀檔案和寫檔案的時候用到比較多的為:
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...