学了IO流,自己用FileReader和FileWriter实现复制文件。
注意:该方法只能复制字符文件,图片等文件不能复制。可看我另一篇用Inputstream和Outputstream实习可以对任何文件的复制。
package com.mjd.io;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
public class TestFileCopy {
public static void main(String[] args) {
File src =new File(“testout.txt”);//目标需复制文件
File dest =new File(“testoutCopy.txt”);//目标粘贴文件
Reader reader=null;
Writer writer=null;
try {
char flush[]=new char[1024];//缓存1kb单位大小的字符文件
int len=-1;//用来计量长度和之后的while语句
reader=new FileReader(src);
writer=new FileWriter(dest);
while((len=reader.read(flush))!=-1) {
writer.write(flush,0,len);
}
writer.flush();//刷新缓存
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if(null!=writer) {//分段关闭,关闭输出
writer.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(null!=reader) {//分段关闭,先输入的最后关闭
reader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}