JAVA I/O小结(四)——字节流方式实现复制操作
看此篇博文前推荐看看这篇几篇,有助于了解File类的各种方法和字节流操作
传送门:
JAVA I/O小结(一)——File类
JAVA I/O小结(二)——File类的递归遍历
JAVA I/O小结(三)——字节流输入输出
其实字节流方式实现复制操作就是将字节流的输入输出方式套在一起,将A文件的数据用输入流读进内存,再从内存中将数据输出给B文件,这里指需要注意在字节输出流时,要将输出模式改为不覆盖数据
之前文件夹中数据:
test123.txt:
456.txt:
代码如下:
public static void main(String[] args) {
try {
FileInputStream incopy = new FileInputStream("./test123.txt");//输入流
FileOutputStream out = new FileOutputStream("./456.txt",true);//这里为true则输出不会覆盖数据,接着之前的数据输出
byte[] b = new byte[50];
int len = 0;
while ((len = incopy.read(b)) != -1) {
out.write(b, 0, len);//写入
}
out.flush();
out.close();
incopy.close();//一定要关闭I/O
} catch (Exception e) {
e.printStackTrace();
}
}
运行后结果:
456.txt:
复制成功
JAVA I/O小结(五)——字符流输入输出
如有问题欢迎指正