美文网首页java随笔
IO 文本读写本地

IO 文本读写本地

作者: 71150ce14a00 | 来源:发表于2017-06-13 17:01 被阅读8次

FileWriter:
构造方法:
FileWriter(String fileName); 传入一个文件路径成员方法
FileWriter(String fileName, boolean append): 根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter 对象。

 其他方法:
                void   write(String str) 向文件中写入字符串
                void   flush()  将内存中的数据刷新到文件/硬盘上 
                void   close()  关流释放系统底层资源

  写入方法:
                  void   write(String str) 向文件中写入字符串
                  void   write(String str,int index, int len): 写一个字符串中的一部分数据
                  void   write(int ch): 写一个字符数据,这里写int类型的好处是既可以写char类型的数据,也可以写char对应的int类型的值 ‘a’= 97
                  void   write(char[] chs): 写一个字符数组数据
                  void   write(char[][ chs,int index, int len): 写一个字符数组的一部分数据

      注意: 换行写入: windows: \r\n     linux: \n     mac:\r
                  路径选择:如果用\反斜线则需要写两个\\ , 转义字符,正则表达式
                                    如果用/ 反斜线,只需要写一个即可, 

close() 和 flush() 方法区别
flush():刷新缓冲区, 实时写入
close():先刷新缓冲区,然后释放资源

FileReader:

             构造方法:

                            FileReader(String fileName);  
                     
           其他方法:
                    int  read()  一次读取一个字符,返回的是int类型的字符
                    int  read(char[] char):  一次读取一个字符数组的数据,返回的是实际读取的字符个数

BufferedWriter :
优点:将文本写入字符输出流,缓冲各个字符,从而提供单个字符,数组和字符串的高效写入
构造方法:
BufferedWriter(Writer out): 创建一个使用默认大小输出缓冲区的缓冲字符输出流
BufferedWriter(Writer out, int sz) :
BufferedReader br = new BufferedReader(new FileReader( "FileWriterDemo.java" ));

           其他方法:
                          void newLine(): 写一个换行符, 这个换行符由系统决定

BufferedReader:
从字符输入流中读取文本,缓冲各个字符,从而实现字符,数组和行的高效读取
BufferedReader br = new BufferedReader(new FileReader( "br.txt"));

     其他方法:
                String readLine(): 一次读取一样数据,但不读取换行符

//缓冲流一次读写一个字符串
public static void method5(String srcFileName,String destFileName) throws IOException {
//创建输入缓冲流对象
BufferedReader br = new BufferedReader(new FileReader(srcFileName));
//创建输出缓冲流对象
BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));

          //一次读写一个字符串
         String line;
          while((line =br .readLine())!=null){
                 bw.write( line);
                 bw.newLine();
                 bw.flush();
         }
         
          //释放资源
          bw.close();
          br.close();
   }
   
    //缓冲流一次读写一个字符数组
    public static void method4(String srcFileName,String destFileName) throws IOException {
          //创建输入缓冲流对象
         BufferedReader br = new BufferedReader(new FileReader(srcFileName));
          //创建输出缓冲流对象
         BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
         
          //一次读写一个字符数组
          char[] chs = new char[1024];
          int len ;
          while((len =br .read(chs ))!=-1) {
                 bw.write( chs,0, len);
         }
         
          //释放资源
          bw.close();
          br.close();
   }
   
    //缓冲流一次读写一个字符
    public static void method3(String srcFileName,String destFileName) throws IOException {
          //创建输入缓冲流对象
         BufferedReader br = new BufferedReader(new FileReader(srcFileName));
          //创建输出缓冲流对象
         BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
         
          //一次读写一个字符
          int ch ;
          while((ch =br .read())!=-1) {
                 bw.write( ch);
         }
         
          //释放资源
          bw.close();
          br.close();
   }
   
    //基本流一次读写一个字符数组
    public static void method2(String srcFileName,String destFileName) throws IOException {
          //创建输入流对象
         FileReader fr = new FileReader(srcFileName );
          //创建输出流对象
         FileWriter fw = new FileWriter(destFileName );
         
          //一次读写一个字符数组
          char[] chs = new char[1024];
          int len ;
          while((len =fr .read(chs ))!=-1) {
                 fw.write( chs,0, len);
         }
         
          //释放资源
          fw.close();
          fr.close();
   }
   
    //基本流一次读写一个字符
    public static void method1(String srcFileName,String destFileName) throws IOException {
          //创建输入流对象
         FileReader fr = new FileReader(srcFileName );
          //创建输出流对象
         FileWriter fw = new FileWriter(destFileName );
         
          //一次读写一个字符
          int ch ;
          while((ch =fr .read())!=-1) {
                 fw.write( ch);
         }
         
          //释放资源
          fw.close();
          fr.close();
   }

}

相关文章

  • IO 文本读写本地

    FileWriter:构造方法:FileWriter(String fileName); 传入一个文件路径成员方法...

  • pythoncookbook 第5章 文件与IO

    第5章 文件与IO 文件的读写 和io都要通过内存 重载系统的编码方式 5.1 读取文本 f=open('/tmp...

  • python基础知识点,文件处理合集

    文件处理 文件读写 创建文本文件 f= open("china-testing.github.io.txt","w...

  • 2018年swoole实战5-异步mysql

    继上篇 2018年swoole实战4-异步io读写 本篇演示 swoole的异步mysql 模拟数据 在本地tes...

  • (一)网络基础之 IO 模型

    IO 读写的基础原理 程序进行 IO 的读写,依赖于系统底层的 IO 读写,基本上会用到底层的 read&writ...

  • org.apache.commons.io.FileUtils使

    org.apache.commons.io.FileUtils快速读写文件 其他参考 Commons IO方便读写...

  • 文件和io(cookbook笔记)

    读写文本数据 读写文本数据 读写各种不同编码的文本数据 使用带有 rt 模式的 open() 函数读取文本文件 写...

  • 跟我一起学Python(八)

    一、IO编程 读写文件是最常见的IO操作,Python内置了读写文件的函数。文件读写的原理:在磁盘上读写文件的功能...

  • zero copy技术图解

    1 传统的IO读写 传统的IO读写有两种方式:IO终端和DMA。他们各自的原理如下。 1.1 IO中断原理 整个流...

  • 文件读写

    读写文件(文件是由字节组成的信息,在磁盘永久保存)是最常见的IO操作。文件分为文本文件和二进制文件。文本文件可以使...

网友评论

    本文标题:IO 文本读写本地

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