美文网首页
No.15 FileReader/FileWrite

No.15 FileReader/FileWrite

作者: 醒着的码者 | 来源:发表于2016-04-10 22:19 被阅读29次

两者分别为InputStreamReader和OutputStreamWrtier的子类;
有关InputStreamReader和OutputStreamWrtier移步

http://www.jianshu.com/writer#/notebooks/3732626/notes/3446668


FileReader(文件读出流)

  • 构造函数

1.FileReader (File file);接收一个File对象表示从该对象处读取数据;
2.FileReader (String name);接受一个文件的字符串地址;

  • 方法

(1)read()方法继承自InputStreamReader
1.public int read(),空参数read方法每次从流中读取一个字符长度的数据;返回值是对应字符的编码;
2.public int read(char[] cbuf, int offset, int length),每次从流中读取length字符长度的数据,存入指定char[]数组总从offset出开始存储;返回值是读取了多少个字符
3.public int read(char[] cbuf)返回值是读取了多少个字符
(2)String getEncoding() 返回正在读取的流中的编码形式
(3)注意:需要关闭输出流

  • 例子

          // 第一步指定输入流位置
      File file = new File("d:\\text.txt");//hello java!
      //建立文件输入流
      FileReader input = new FileReader(file);
      long length = file.length();
      char[] c =new char[(int)length];
      //循环读取
      int len = 0;        
      while((len = input.read() ) != -1){
          System.out.print(len + ",");//104,97,108,108,111,32,106,97,118,97,33,
      }
      //while((len = input.read(c)) != -1){
    

    // System.out.println(len);//11
    // }
    input.close();

注意同一个文件在一个程序只能读取一次,不是因为len被置为-1了,而是流指针已经到了流的最后。即read()返回的值已经为-1;除非你再见立一条流来读取。


FileWriter

  • 构造函数

1.FileWriter (File file);接收一个File对象表示从往该文件处写数据;
2.FileWriter (File file,Boolean append);append为true时候在文件结尾处接着写入。
3.FileWriter (String name);接收一个文件的字符串地址;
4.FileWriter (String name,Boolean append);同2.

  • 方法

(1)write():
1.public void write(int c);//c是指定Unicode编码中字符对应的整数值
2.public void write(char[] cbuf,int off, int len);
3.public void write(String str, int off, int len);
4.public void write(String str);//字符流相比于字节流可以直接写入字符串

  • 例子
    // 第一步指定输入流位置
    File file = new File("d:\text1.txt");//hello java!
    //建立文件输入流
    FileWriter fw = new FileWriter(file,true);
    String str = "hello android!!!!!";
    //写入数据
    fw.write(str);
    fw.write(111);
    fw.close();

相关文章

网友评论

      本文标题:No.15 FileReader/FileWrite

      本文链接:https://www.haomeiwen.com/subject/ndfulttx.html