使用异常捕获机制完成下述IO操作 PrinterWriter编写程序要求下面的类实现功能添加新员工要求用户输入一个员工信息格式如下jackson25男50002008-12-22用户输入后需要做下述验证要求用户名长度在1-20个字符之间且必须是英文年龄在0-100之间的整数性别只能是男或女当发现用户输入有不符合规定时提醒用户相关内容输入不符合要求并要求重新输入。都输入正确后将该员工添加到emptx
代码如下:
import java.io.*;
public class AddEmployee { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String input = ""; String regexName = "^[a-zA-Z]{1,20}$"; String regexAge = "^[1-9]\d{0,1}$|^100$"; String regexGender = "^[男女]$";
try {
System.out.println("请输入员工信息(格式为:姓名,年龄,性别,薪资,入职日期)");
input = br.readLine();
String[] info = input.split(",");
String name = info[0];
String age = info[1];
String gender = info[2];
String salary = info[3];
String hireDate = info[4];
while (!name.matches(regexName) || !age.matches(regexAge) || !gender.matches(regexGender)) {
System.out.println("输入不符合要求,请重新输入员工信息(格式为:姓名,年龄,性别,薪资,入职日期)");
input = br.readLine();
info = input.split(",");
name = info[0];
age = info[1];
gender = info[2];
salary = info[3];
hireDate = info[4];
}
FileWriter fw = new FileWriter("emp.txt", true);
PrintWriter pw = new PrintWriter(fw);
pw.println(input);
pw.close();
fw.close();
System.out.println("员工信息添加成功!");
} catch (IOException | NumberFormatException e) {
System.out.println("输入不符合要求,请重新输入员工信息(格式为:姓名,年龄,性别,薪资,入职日期)");
}
}
原文地址: https://www.cveoy.top/t/topic/hfan 著作权归作者所有。请勿转载和采集!