Java檔案讀寫操作 阿新 • • 發佈:2019-01-22 程式碼 package fileOperation; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.OutputStreamWriter; publicclassFileOperation{ publicstatic voidmain(String[]args){ StringfilePath="D:/test/test.txt"; Stringcontent="第一行\n第二行\n"; Stringcontent2="第三行\n第四行\n"; createFile(filePath); writeFile(filePath,content); writeFile(filePath,content2); readFile(filePath); } /* *按行讀取檔案 */ publicstaticvoidreadFile(StringfilePath){ Filefile=newFile(filePath ); BufferedReaderreader=null; try{ reader=newBufferedReader(newFileReader(file)); StringtempString=null; while((tempString=reader.readLine())!=null){ System.out.println(tempString); } reader.close(); }catch(IOExceptione){ e.printStackTrace(); }finally{ if(reader!=null){ try{ reader.close(); }catch(IOException e1){ } } } } /* *以追加方式寫檔案 */ publicstaticvoidwriteFile(StringfilePath,Stringconent){ BufferedWriterout=null; try{ out=newBufferedWriter(newOutputStreamWriter(newFileOutputStream(filePath,true))); out.write(conent); }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(out!=null){ out.close(); } }catch(IOExceptione){ e.printStackTrace(); } } } /* *建立檔案 */ publicstaticvoidcreateFile(StringfilePath){ Filefile=newFile(filePath); if(file.exists()){ //System.out.println("檔案已存在"); }else{ try{ FilefileParent=file.getParentFile(); if(fileParent!=null){ if(!fileParent.exists()){ fileParent.mkdirs(); } } file.createNewFile(); }catch(IOExceptione){ e.printStackTrace(); } } } /* *以追加方式寫檔案,效率低 */ publicstaticvoidwriteFileByFileWriter(StringfilePath,Stringcontent){ FileWriterwriter=null; try{ writer=newFileWriter(newFile(filePath),true); writer.write(content); }catch(IOExceptione){ e.printStackTrace(); }finally{ try{ if(writer!=null){ writer.close(); } }catch(IOExceptione){ e.printStackTrace(); } } } } 結果 第一行 第二行 第三行 第四行