1. 程式人生 > >Java的 FileWriter類 和 FileReader類

Java的 FileWriter類 和 FileReader類

執行 使用 tac trace != dwr 輸出 txt 覆蓋

一.FileReader類
1,構造方法:
FileReader fr = new FileReader(String fileName);//使用帶有指定文件的String參數的構造方法。創建該輸入流對象。並關聯源文件。
2,主要方法:
int read(); // 讀取單個字符,返回一個int型變量代表讀取到的字符,如果已達到流末尾,則返回 -1。
int read(char []cbuf);//將字符讀入數組。返回讀取的字符數。如果已經到達尾部,則返回-1。
void close();//關閉此流對象。釋放與之關聯的所有資源。


例,
3.FileReader讀取文件內容
①方法一:
try{
//FileReader類從InputStreamReader類繼承而來。該類按字符讀取流中數據。
FileReader inread=new FileReader("E:\\xxx\\1\\BeautifulSoup總結.txt");
//讀取字符流
BufferedReader in=new BufferedReader(inread);
//BufferedReader in=new BufferedReader(new FileReader("E:\\xxx\\test.txt"));
String str;//用來保存讀取到的文件內容
while((str=in.readLine())!=null){
System.out.println(str);
}
System.out.println(str);
}catch(Exception e){
e.printStackTrace();
}
②方法二
try{
FileReader read=new FileReader("E:\\xxx\\test.txt");
int ch = 0;
//read()讀取單個字符,返回一個int型變量代表讀取到的字符
while((ch = read.read()) != -1){
System.out.print((char)ch);
}
read.close();
}catch(Exception e){
e.printStackTrace();
}

二,FileWriter類(字符輸出流類)



1,構造方法:

FileWriter fw = new FileWriter(String fileName);//創建字符輸出流類對象和已存在的文件相關聯。文件不存在的話,並創建。
如:FileWriter fw = new FileWriter("C:\\demo.txt");


FileWriter fw = new FileWriter(String fileName,boolean append);//創建字符輸出流類對象和已存在的文件相關聯,並設置該該流對文件的操作是否為續寫。
如:FileWriter fw = new FileWriter("C:\\demo.txt",ture); //表示在fw對文件再次寫入時,會在該文件的結尾續寫,並不會覆蓋掉。

2,主要方法:

void write(String str) //寫入字符串。當執行完此方法後,字符數據還並沒有寫入到目的文件中去。此時字符數據會保存在緩沖區中。
此時在使用刷新方法就可以使數據保存到目的文件中去。
viod flush() //刷新該流中的緩沖。將緩沖區中的字符數據保存到目的文件中去。
viod close() //關閉此流。在關閉前會先刷新此流的緩沖區。在關閉後,再寫入或者刷新的話,會拋IOException異常。

例,
3.FileWriter()想文件追加內容
try{
//new FileWriter(filename,true):true表示以追加的形式寫入,沒有true則會覆蓋原有的內容


BufferedWriter writer=new BufferedWriter(new FileWriter("E:\\xxx\\test.txt",true));
writer.write("yxy");
writer.flush();
writer.close();//必須執行

}catch(Exception e){
e.printStackTrace();
}

Java的 FileWriter類 和 FileReader類