測試了一些用普通的bufferreader讀太慢了,還是用位元組陣列輸出流比較快,測試nio比它還慢幾十毫秒如果讀寫8m的txt檔案示例**:
string newpath="";
//long start = system.currenttimemillis();
mapmap = xmlreader.viewxml("");
file oldfile = new file(oldpath);
string a=oldfile.getname().replace(".sql", "");
newpath = oldfile.getparentfile()+"\\"+a+"new.sql";
file newfile = new file(newpath);
if(!newfile.exists())
// 定義乙個輸入流物件
fileinputstream fis = null;
// 定義乙個存放輸入流的緩衝物件
bufferedinputstream bis = null;
// 定義乙個輸出流,相當stringbuffer(),會根據讀取資料的大小,調整byte的陣列長度
bytearrayoutputstream baos = new bytearrayoutputstream();
// 把檔案路徑檔名作為引數告訴讀取流
fis = new fileinputstream(oldpath);
// 把檔案讀取流物件傳遞給快取流
bis = new bufferedinputstream(fis);
// 獲得快取讀取流開始位置
int len = -1;
// 定義乙個容器存放資料
byte buf = new byte[1024];
while ((len = bis.read(buf)) != -1)
byte buffer = baos.tobytearray();
string sql = new string(buffer, "gbk");
bis.close();
fis.close();
for (string s : map.keyset())
", mapson.get(s1).getvalue());}}
} }
system.out.println(sql);
outputstreamwriter osr=new outputstreamwriter(new fileoutputstream(newfile) ,"gbk");
bufferedwriter bw = new bufferedwriter(osr);
bw.write(sql);
bw.flush();
bw.close();
//long end = system.currenttimemillis();
"執行時間---------" + (start - end));
return newpath;
io流的讀寫
所有的檔案,或資料夾 都用該類表示。file file new file c down a.txt 或 file file new file c down a.txt file 就表示a.txt檔案。可以用file來呼叫響應的方法。file.exists 判斷檔案或問價夾是否存在 file.crea...
IO流檔案讀寫
p1 開啟檔案 讀檔案 關閉檔案的典型方法 try f open d test.txt r print f.read finally if f f.close p2 推薦的簡潔寫法,不必顯示的關閉檔案描述符 open返回的物件在python中稱作file like 物件,可以是位元組流 網路流 自定...
I O流 檔案讀寫
流 流 即是流動的意思,是物質從一處向另一處流動的過程。c 流是指資訊從外部輸入裝置 鍵盤等 向計算機內部 如記憶體 輸入和從記憶體向外部輸出裝置 顯示器 輸出的過程。這種輸入輸出的過程被形象的成為 流 為了實現這種流動,c 定義了i o標準庫,這些每個類都成為流 流類,完成一些功能。define ...