黑马程序员技术交流社区

标题: 拷贝文本文件 [打印本页]

作者: 天方地圆    时间: 2014-3-14 21:24
标题: 拷贝文本文件
  1. import java.io.*;

  2. class  CopyText
  3. {
  4.         public static void main(String[] args) throws IOException
  5.         {
  6.                
  7.                 copy_1();

  8.         }
  9.         public static void copy_1()throws IOException
  10.         {
  11.                 FileWriter fw = new FileWriter("RuntimeDemo_copy.txt");

  12.                 FileReader  fr = new FileReader("RuntimeDemo.java");

  13.                 int ch = 0;

  14.                 while((ch=fr.read())!=-1);
  15.                 {
  16.                         fw.write(ch);
  17.                 }

  18.                 fw.close();
  19.                 fr.close();
  20.         }
  21. }
复制代码
编译  运行 都没问题 ,但是出来的RuntimeDemo_copy.txt 文件 ,里面只有一个? ,是怎么回事?

作者: chen_x    时间: 2014-3-14 21:44
                while((ch=fr.read())!=-1);

                {

                        fw.write(ch);

                }
这个while循环第一行条件判断后面多了一个分号;  把分号去掉试一下~
有分号的话下面的fw.write()根本就没有循环执行,只写入了-1,然后可能编码识别不了-1,就输出了个?.
作者: 天方地圆    时间: 2014-3-14 22:18
chen_x 发表于 2014-3-14 21:44
while((ch=fr.read())!=-1);

                {

大赞 !!没注意啊   :)




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