IO流——FileWriter

/*
字符流和字節流:

字節流兩個基類:
InputStream   OutputStream


字符流兩個基類:
Reader Writer

先學習一下字符流的特點。

既然IO流是用於操作數據的,
那麼數據的最常見體現形式是:文件。

那麼先以操作文件爲主來演示。

需求:在硬盤上,創建一個文件並寫入一些文字數據。

找到一個專門用於操作文件的Writer子類對象。FileWriter。  後綴名是父類名。 前綴名是該流對象的功能。


*/
import java.io.*;
class  FileWriterDemo
{
	public static void main(String[] args) throws IOException
	{
		//創建一個FileWriter對象。該對象一被初始化就必須要明確被操作的文件。
		//而且該文件會被創建到指定目錄下。如果該目錄下已有同名文件,將被覆蓋。
		//其實該步就是在明確數據要存放的目的地。
		FileWriter fw = new FileWriter("demo.txt");

		//調用write方法,將字符串寫入到流中。
		fw.write("abcde");

		//刷新流對象中的緩衝中的數據。
		//將數據刷到目的地中。
		//fw.flush();


		//關閉流資源,但是關閉之前會刷新一次內部的緩衝中的數據。
		//將數據刷到目的地中。
		//和flush區別:flush刷新後,流可以繼續使用,close刷新後,會將流關閉。
		fw.close();
	}
}
/*
IO異常的處理方式。
*/
import java.io.*;

class  FileWriterDemo2
{
	public static void main(String[] args) 
	{
		FileWriter fw = null;
		try
		{
			fw = new FileWriter("demo.txt");
			fw.write("abcdefg");

		}
		catch (IOException e)
		{
			System.out.println("catch:"+e.toString());
		}
		finally
		{
			try
			{
				if(fw!=null)
					fw.close();				
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
			
		}		

	}
}



/*
演示對已有文件的數據續寫。
*/
import java.io.*;
class  FileWriterDemo3
{
	public static void main(String[] args) throws IOException
	{

		//傳遞一個true參數,代表不覆蓋已有的文件。並在已有文件的末尾處進行數據續寫。
		FileWriter fw = new FileWriter("demo.txt",true);

		fw.write("nihao\r\nxiexie");

		fw.close();
	}
}







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章