package com.msb.io01;
import java.io.*;
public class Test03 {
public static void main(String[] args) {
/*复制文件*/
//1.File对象,装载源文件
File f1 = new File("d://demo.txt");
//2.File对象,装载目标文件
File f2 = new File("d://test.txt");
//3.FileReader对象,读取f1文件中的内容
FileReader fr = null;//局部变量必须初始化
FileWriter fw = null;
try {
fr = new FileReader(f1);
//4.FileWriter对象,将f1文件内容写入到f2中
fw = new FileWriter(f2,true);
//5.缓冲数组,存储信息
char[] ch = new char[100];
int len = fr.read(ch);//read()方法每次做多读100个字符,实际读取的字符长度
while (len!=-1){//没有到文档最后,继续读取
fw.write(ch,0,len);//将缓冲数组的有效字符,写入到文件f2中
len = fr.read(ch);//继续读取f1文件
}
} catch (IOException e) {//捕捉多个异常合并到一起 (异常1 | 异常2 e)
e.printStackTrace();
} finally {//这里的每条记录必须要执行
//释放资源,后用先关
try {
if (fw!=null){//避免为空的情况
fw.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if (fr!=null){//每条记录单独处理异常,避免上一条记录异常,下一条记录无法执行。
fr.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
java文件操作try catch finally异常处理
最新推荐文章于 2023-04-26 09:40:19 发布