日期:2014-05-20 浏览次数:20717 次
public class BufferedStream { public static void main(String[] args) throws IOException { FileReader fs=new FileReader("f:\\myjavacode\\Exa.java"); BufferedReader bs=new BufferedReader(fs); while(bs.readLine()!=null){ String s=bs.readLine(); System.out.println(s); } } }
while((string=bs.readLine())!=null){ System.out.println(string); }
------解决方案--------------------
while(bs.readLine()!=null){ String s=bs.readLine(); System.out.println(s); } 是这样的当执行bs.readLine()!=null时 bs.readLine();的返回值是文章第一行字符 String s=bs.readLine();很显然到这句readLIne();方法已调用两次,s值为文章第二行。所以就出现了不想看到的结果。 楼主这样改: public class BufferedStream { public static void main(String[] args) throws IOException { FileReader fs=new FileReader("f:\\myjavacode\\Exa.java"); BufferedReader bs=new BufferedReader(fs); String s = ""; while ((s = bs.readLine()) != null) { System.out.println(s); } } }