综合练习
package com.company.bean10;
import java.io.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) throws IOException, ParseException {
//1.定义File对象,关联映射磁盘文件
File f1=new File("D:/a.txt");
//2.定义缓冲字符流
FileReader fr=new FileReader(f1);
BufferedReader br=new BufferedReader(fr);
//3.对文档进行读取,每次读取一行数据
ArrayList<Student> list=new ArrayList<>();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd");
String temp;
while(true){
temp=br.readLine();//读取一行数据
if(temp!=null){
System.out.println(temp);
//把字符串按照-解析出来4个数据,存入数组中
String[] split=temp.split("-");
System.out.println(Arrays.toString(split));
Student student=new Student();
student.setName(split[0]);
student.setSex(split[1]);
//取出数组中的第三个元素,是一个日期字符串,给它转换为对应的日期
student.setBristday(sdf.parse(split[2]));
student.setAddres(split[3]);
list.add(student);
}else{
break;
}
}
System.out.println(list);
}
}
异常
程序执行过程中的不正常情况。
异常分为 编译时异常
和 运行时异常
。
编译时异常
运行时异常
int a=5/0;
System.out.println(a);
处理异常的五个关键字:try catch finally throw throws
try:里面放入可能出现异常的代码进行监控
catch:如果出现异常,则执行catch
finally:程序依然会执行的代码放入finally,一般用来做资源释放
package com.company.bean10;
import java.io.*;
import java.util.Arrays;
public class ExceptionTest {
public static void main(String[] args) {
File f1 = new File("D:/a.txt");
FileReader fr = null;
BufferedReader br = null;
try {
fr = new FileReader(f1);
br = new BufferedReader(fr);
String temp;
while (true) {
temp = br.readLine();//读取一行数据
if (temp != null) {
System.out.println(temp);
} else {
break;
}
}
} catch (FileNotFoundException e) {
System.out.println("出现了文件找不到异常");
e.printStackTrace();
} catch (IOException e) {
System.out.println("出现了文件io异常");
e.printStackTrace();
}finally {
try {
fr.close();
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}