请问java读文本文件有哪几种方法,能归纳一下吗?以及有缺点,谢谢
我只知道 FileReader / BufferedReader
搞不明白,java为什么搞这么复杂,已经FileReader了,还要BufferedReader别的语言都只有一个文件句柄的

解决方案 »

  1.   

    java io 使用的是装饰模式,使用起来比较灵活。楼主可以看下装饰模式实现的原理
      

  2.   

    BufferedReader 先方在缓冲区,提高效率~
      

  3.   


    FileInputStream fis = new FileInputStream("c:\\test.txt");
    while ((i=fis.read())!=-1)
    {
    ch[j++]=(char)i;
    }这个好象比较麻烦!!
      

  4.   

    1字节流 
    inputstream/outputStream 是所有字节输入输出的根类 他是抽象类2文件字节流
    FileinputStream/FileoutputStream  文件级的字节流操作3过滤流
    DataInputStream/DataoutputStream
    将基本的字节输入输出流,自动转成按基本数据类型进行读写
    如:
    DataInputStream dis=new DatainputStream(new FileInputStream("c:\\t.txt"));
    将文件t.txt窜接成一个datainputStream流4
    bufferedinputStream 和 bufferedoutputStream
    是将1字节流转变成一个带缓冲的字节流还有就是字符流了 想对汉字这样的双字节字符的处理
    像reader和writer.........
      

  5.   

    一般性采用BufferedReader读文件居多,因为这个效率高,可以在构造方法中一层一层地套用。BufferedReader br = new BufferedReader(new FileReader(<filename>));正如3楼所说的,采用了装饰器模式,只是多包装了一层功能。