Clown10101010 发表于 2017-6-11 10:09:38

文件复制问题(输入输出流)

新手上路,请多关照。

在学习输入输出流,想实现文件内容的复制,但代码运行结果不正确,而且程序运行后电脑出现卡顿。为什么会这样呢?求助大神。

代码如下://此程序实现两个文件内容的复制
package Input_Output;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class In_out1 {

        public static void main(String[] args) throws IOException {

                File file2 = new File("F:\\demo2.txt");
                file2.createNewFile();
                FileReader fileReader = new FileReader("F:\\demo1.txt");
                BufferedReader bufferedReader2 = new BufferedReader(fileReader);

                FileWriter fileWriter2 = new FileWriter(file2);
                PrintWriter printWriter2 = new PrintWriter(fileWriter2);

                String D = bufferedReader2.readLine();
               
                while (D.length() != 0) {
                        printWriter2.println(D);
                        D = bufferedReader2.readLine();

                }
                fileReader.close();
                fileWriter2.close();
                System.out.println("复制成功");

        }

}

零度非安全 发表于 2017-6-11 17:09:02

请将 while 改成 if

你这里是判断,而不是循环

Clown10101010 发表于 2017-6-11 17:28:53

零度非安全 发表于 2017-6-11 17:09
请将 while 改成 if

你这里是判断,而不是循环

大神,while语句改为 while (D.length() > 0),程序报错。这时发生了什么,为什么会报错?
是逻辑错误还是语法错误呢?{:5_94:}

零度非安全 发表于 2017-6-11 17:40:09

Clown10101010 发表于 2017-6-11 17:28
大神,while语句改为 while (D.length() > 0),程序报错。这时发生了什么,为什么会报错?
是逻辑错误还 ...

你把 while 中的 D.length() != 0 改成 D != null

zzzz76 发表于 2017-6-11 20:14:24

空指针异常

Clown10101010 发表于 2017-6-11 20:34:58

zzzz76 发表于 2017-6-11 20:14
空指针异常

嗯嗯,感谢
页: [1]
查看完整版本: 文件复制问题(输入输出流)