黑马程序员技术交流社区
标题:
复制一个文件里面没有内容怎么办?
[打印本页]
作者:
思维
时间:
2014-8-1 10:16
标题:
复制一个文件里面没有内容怎么办?
本帖最后由 思维 于 2014-8-2 10:03 编辑
今天我把一个内容为“ABCD"的文件a.txt复制到G盘的b.java中,文件最后复制成功了,可是里面没有内容!这是为什么?文件复制没有产生内容的原因有几种啊!代码如下:
import java.io.*;
class CopyDemo{
public static void main(String[] args){
FileWriter fw=null;
FileReader fr=null;
try{
fw=new FileWriter("G:\\b.java");
fr=new FileReader("a.txt");
char[] buf=new char[1024];
int len=0;
while((len=fr.read())!=-1){
fw.write(buf,0,len);
}
}
catch(Exception e){
throw new RuntimeException("读取失败");
}
finally{
if(fr!=null)
try{
fr.close();
System.out.println("aaa");
}
catch(IOException e){}
if(fw!=null)
try{
fw.close();
}
catch(IOException e){}
}
}
}
复制代码
作者:
从未有过的晴天
时间:
2014-8-1 10:34
while((len=fr.read())!=-1){
fw.write(buf,0,len);
}
应该是 len=fr.read(buf)
作者:
star5603
时间:
2014-8-1 10:57
你试着在while里吗flush下
作者:
Peach2014
时间:
2014-8-1 11:33
你看看你的buf,你都不曾改变过它的值,你去读它,它肯定为空了!
作者:
裤裆里的温柔、
时间:
2014-8-1 12:31
(len=fr.read())这行错咯,应该读到数组里的,
作者:
思维
时间:
2014-8-2 10:03
目测错的还真不少!:D
作者:
禅伤
时间:
2014-8-2 11:22
我也老范这个错误,复制的文件里都是乱七八糟的东西。就是
(len=fr.read())这行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2