黑马程序员技术交流社区

标题: 关于缓冲区读取的问题 [打印本页]

作者: rolling-stone    时间: 2014-8-13 21:57
标题: 关于缓冲区读取的问题
  1. import java.io.*;
  2. class BufferedDemo03 {
  3.         public static void main(String[] args)throws IOException{
  4.                 BufferedReader bufr = new BufferedReader(new FileReader("IncrementDecrement2.java"));
  5.                 BufferedWriter buwr = new BufferedWriter(new FileWriter("demo.txt"));
  6.                         String line = null;
  7.                         //readLine只返回回车符之前的内容,并不返回回车符。
  8.                         while((line=bufr.readLine())!=null){
  9.                                 buwr.write(line);
  10.                         }
  11.                         bufr.close();
  12.                         buwr.close();
  13.                 }
  14. }
复制代码

有个问题就是复制过来的文字,不是一行一行的,而是都堆在一起的,这是为什么?
作者: 地狱天堂    时间: 2014-8-13 22:10
因为没有换行
可以buwr.write(line+"\n");
但是这样做不利于跨平台
所以buwr.write(line);后面加一句buwr.newLine();
作者: rolling-stone    时间: 2014-8-13 22:15
地狱天堂 发表于 2014-8-13 22:10
因为没有换行
可以buwr.write(line+"\n");
但是这样做不利于跨平台

好的,谢谢,明白了
作者: java—family    时间: 2014-8-13 22:19
在自定义缓冲区中。在写那个myreadline 的函数时,有两个判断,是不存进集合的。你看看那代码就知道了
作者: 嘿~~    时间: 2014-8-14 09:18
写入一行就换行啊,newLine()你值得拥有
作者: 李章敏    时间: 2014-8-14 09:42
没有换行                                                                       
作者: 王凯路路    时间: 2014-8-14 09:53
newLine();//换行,

作者: Moriarty    时间: 2014-8-14 10:47
你可以再写的后面加一个newLine()方法就可以了。
作者: nadax    时间: 2014-8-14 11:46
木有换行符,加个\n就可以了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2