A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

字符流拷贝的第一种推荐方法
FileReader fr = new FileReader( "123.txt");//创建输入流,关联文件
    FileWriter fw = new FileWriter("456.txt" );//创建输入流,关联文件
    char [] arr = new char [1024*8]; //创建char数组,并定义大小
    int len ;
    while ((len = fr.read())!= -1) { //将数据存储到字符数组中
         fw.write(arr, 0, len) ;    //将字符数组里的数据写到文件上
    }
    fr.close(); //关流释放资源
    fw.close();
字符流拷贝的第二种推荐方法
    BufferedReader br = new BufferedReader( new FileReader("123.txt" ));//创建带缓冲输入流,关联文件
    BufferedWriter bw = new BufferedWriter(new FileWriter("345.txt" ));//创建带缓冲输出流,关联文件
    int c ;
    while ((c = br.read())!= -1) { //读取数据
         bw.write(c); //写出数去
    }
    br.close(); //关流
    bw.close();
字符流拷贝的第三种方法,也是字符流拷贝的一种特殊方法
注意:
* BufferedReader的readLine()方法可以读取一行字符(不包含换行符号)
* BufferedWriter的newLine()可以输出一个跨平台的换行符号"\r\n"
所以一旦使用这种方法,这两者都是成对出现,一起使用,而且newLine方法是跨平台的
     BufferedReader br = new BufferedReader( new FileReader("123.txt" ));
    BufferedWriter bw = new BufferedWriter(new FileWriter("456.txt" ));
    String line ;
    while((line = br.readLine())!= null ) {//将字符串整行读出,遇到null则停止读取
         bw.write(line);
         bw.newLine(); //注意:由于整行读取不能读取回车换行符,需要在这里加入回车换行符
    }
    br.close();
    bw.close();

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马