在E:\JavaIO中新建abc.txt文件,并在里面写上一些文字。现在要做的是,在Eclipse里面用FileInputStream和
再定义一个Test.java的类进行测试:
运行结果,打开文件目录,即可看到abc1.txt文件,里面内容和abc.txt一样,实现拷贝
FileOutputStream的read()和write()方法,实现,abc.txt文件的拷贝新建IOUitl.java,代码如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class IOUitl {
public static void copyfile(File src,File des)throws IOException{
if(!src.exists()){
throw new IllegalArgumentException(src+"原文件不存在");
}
if(!src.isFile()){
throw new IllegalArgumentException(src+"不是文件");
}
FileInputStream in = new FileInputStream(src);
//文件不存在直接创建,文件存在删除后创建
FileOutputStream out = new FileOutputStream(des);
byte[] buf = new byte[8*1024];
int b;
//in.read(buf,0,buf.length)将读的数据存在buf数组,从0开始到数组长度
while((b=in.read(buf,0,buf.length))!=-1){
out.write(buf, 0, b);
out.flush();
}
in.close();
}
}
再定义一个Test.java的类进行测试:
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.ArrayList;
import java.util.Arrays;
public class Test2 {
public static void main(String[] args){
File src = new File("E:\\JavaIO\\abc.txt");
File des = new File("E:\\JavaIO\\abc1.txt");
try {
IOUitl.copyfile(src, des);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行结果,打开文件目录,即可看到abc1.txt文件,里面内容和abc.txt一样,实现拷贝