java IO 文件复制问题

来源:百度知道 编辑:UC知道 时间:2024/06/17 19:10:06
我写的程序如下:
//TestCopy.java
import java.io.*;
public class TestCopy{
public static void main(String[] args)
{
try{
FileReader fr=new FileReader("E:/Hello.txt");
FileWriter fw=new FileWriter("E:/ying.txt");
while(fr.read()!=-1)
{
fw.write(fr.read());
}
fr.close();
fw.close();
}
catch(FileNotFoundException ne)
{
System.out.println("找不到指定的文件");
System.exit(-1);
}
catch(IOException ie)
{
System.out.println("文件读取错误");
System.exit(-1);
}
System.out.println("文件已经复制");
}
}
我事先在E盘建立了一个Hello.txt文档,但是运行程序之后,E盘中生成的文件ying.txt里的内容和Hello.txt中的内容不同

请高手明示,小弟谢了

int s=-1;
把while循环改为下面这个就可以了。

while((s=fr.read())!=-1)
{
fw.write(s);
}
你那个程序里fr.read()本来就是读取一个字符,你又用fw.write(fr.read())相当于向后移动了两下。当然读取的结果就是跳过一个字符。

good luck to you!