InputStreamReader和FileReader的區別


/*
BufferedReader

InputStreamReader 轉換流
*/
import java.io.*;

public class BufferedReaderTest02
{
public static void main(String[] args) throws Exception{

/*
//創建帶有緩沖區的字符輸入流
FileInputStream fis = new FileInputStream("BufferedReaderTest02.java"); //文件字節輸入流

//轉換流(將字節流轉換成字符流)
InputStreamReader isr = new InputStreamReader(fis); //isr是字符流

BufferedReader br = new BufferedReader(isr);
*/

BufferedReader br
= new BufferedReader(new InputStreamReader(new FileInputStream("BufferedReaderTest02.java")));

//開始讀
String temp = null;
while((temp=br.readLine())!=null){
System.out.println(temp);
}

//關閉,關閉最外層的流即可. (裝飾者模式)
br.close();
}
}

 

 InputStreamReader和FileReader的區別:

 InputStreamReader是輸入字節到字符的轉換流,所以其構造方法的參數必須是InputStream類型的,並且可以在構造方法中重新指定編碼的方式; InputStreamReader是FileReader的父類;

FileReader是便捷類,構造器的參數可以是文件的路徑字符串,也可以是File類;不需要new 一個 InputStream作為參數。

FileReader:

 

InputStreamReader:

 

 

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com