51,411
社区成员
发帖
与我相关
我的任务
分享StudentSerialization stuseria = new StudentSerialization();
ObjectInputStream ois = null;
try {
File file = new File("D:\\Ideal\\practice\\");
stuseria.searchFile(file); //将file文件夹下所有的文件都添加到stuseria.filelist集合中
if (stuseria.filelist.size()!=0){
int num = 0; //查找到的学生对象数量
for (File f:stuseria.filelist){
ois = new ObjectInputStream(new FileInputStream(f));//抛出异常的地方
Object o;
if ((o=ois.readObject()) instanceof Student){
//省略对获取的对象进行相关处理代码
}
}
}
//省略相关catch/finally以及关闭流代码块
修改的代码如下:
for (File f:stuseria.filelist){
try {
ois = new ObjectInputStream(new FileInputStream(f));//读取到存储非序列化文件时,会抛出StreamCorruptedException异常
}catch (StreamCorruptedException e){
continue;
}