IO流簡單的讀取檔案寫入到新的檔案下
簡單的流讀取寫入檔案
public static void main(String[] args) { FileWriter FW = null;//建立寫入流 FileReader FR = null;//建立讀取流 try { FW = new FileWriter("D://invite1.html");//寫入目標檔案,不存在會自動建立 FR = new FileReader("D://invite.html");//讀取目標檔案內容 char[] buf = new char[1024];//定義一個數組接受讀取到的內容,長度最好是1024的倍數 int len = 0;//定義一個長度用來判斷是否讀取到最後一位,到最後一位返回-1 while ((len=FR.read(buf))!=-1) {//判斷是否讀取到最後一位 FW.write(buf, 0, len);//寫入buf陣列中的0開始長度為len的內容,可能不滿1024只需寫入讀取到的長度 } } catch (IOException e) { e.printStackTrace(); } finally {//關閉流,關閉流必須拋異常 if(FW!=null){ try { FW.close(); } catch (IOException e) { e.printStackTrace(); } } if(FR!=null){ try { FW.close(); } catch (IOException e) { e.printStackTrace(); } } } }
為了提高流的效率加入了緩衝流
//寫入緩衝流 BufferedWriter bw = new BufferedWriter(FW);//將寫的流放入緩衝區 bw.write("寫入內容"); //寫入後一定要重新整理 bw.flush(); bw.close();//關閉緩衝流,其實就是關閉緩衝區中的流物件 //讀取緩衝流 BufferedReader br = new BufferedReader(FR);;//將讀的流放入緩衝區 br.readLine();//特殊的方法可以一次讀取文字檔案一行,如果到末尾返回null br.close();//關閉緩衝流,其實就是關閉緩衝區中的流物件