IO之轉換流-OutputStreamWriter類和InputStreamReader類

轉換流類別:

OutputStreamWriter:是Writer的子類,將輸出的字符流變成字節流,即將一個字符流的輸出對象變成字節流輸出對象。

InputStreamReader:是Reader的子類,將輸入的字節流變成字符流,即將一個字節流的輸入對象變成字符流的輸入對象

以文件操作爲例:內存中的字符數據需要通過OutputStreamWrite變爲字節流才能保存在文件中。讀取時需要將讀入的字節流通過InputStreamReader變爲字符流。


一、將字符輸出流變爲字節輸出流

public class OutputStreamWriterDemo {
	public static void main(String[] args) {
		File f = new File("D:"+File.separator+"test.txt");
		Writer writer = null;
		try {
			writer = new OutputStreamWriter(new FileOutputStream(f));
			writer.write("將字符輸出流變成字節輸出流");
			writer.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
}

二、將字符輸入流變成字節輸入流:

public class InputStreamReaderDemo {
	public static void main(String[] args) {
		File f = new File("D:"+File.separator+"test.txt");
		Reader reader = null;
		try {
			reader = new InputStreamReader(new FileInputStream(f));
			char c[] = new char[1024];
			int len = reader.read(c);
			reader.close();
			System.out.println("讀取:"+new String(c,0,len));
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}


發佈了20 篇原創文章 · 獲贊 3 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章