packagecom.dragon.java.hwlogin;importjava.io.FileNotFoundException;importjava.util.HashSet;importjava.util.Scanner;importjava.util.Set;/** 模拟用户登陆,并记录登陆日志。
a:根据用户的选择是注册用户还是登陆用户。
b:如果是用户注册把用户注册的用户名和密码保存在文件中,文件可以记录多组用户名和密码。
c:每个用户每登陆一次都生产一个登陆记录,把登陆记录保存在文件中,形成登陆日志。登陆记录格式(用户名, 密码, 登陆时间): ==zhangsan, xxxxx, 2016年8月16日 13:20:20==
d:如果是用Admin管理员的身份登陆的,可以查看所有的用户的登陆记录。否则其他用户只可以查看自己的登陆记录。*/
public classTest {static Set set = new HashSet<>();
@SuppressWarnings("resource")public static void main(String[] args) throwsFileNotFoundException {
Scanner scanner= newScanner(System.in);
AdminUser adminUser= newAdminUser();
User thisUser= null;//首先将曾经的用户信息存入集合中
adminUser.splitFile(AdminUser.filePath2, set);while (true) {
System.out.println("-----欢迎使用xxx系统-----");
System.out.println("1.注册用户 2.登录用户");
System.out.println("3.管理员登录 4.退出");
System.out.println("请输入序号:");
String name= null, password = null;switch(scanner.nextInt()) {case 1:
System.out.println("-----用户注册:-----");
System.out.println("请输入用户名:");
name=scanner.next();
System.out.println("请输入密码:");
password=scanner.next();
System.out.println("请确认密码:");if (!scanner.next().equals(password)) {
System.out.println("两次输入的密码不相同!");continue;
}if (set.size() != 0) {if (adminUser.userExist(name, set) != null) {
System.out.println("该用户已存在!");break;
}else{
adminUser.userRegister(name, password, set);
}
}else{
adminUser.userRegister(name, password, set);
}break;case 2:
System.out.println("-----用户登录:-----");if (set.size() != 0) {
System.out.println("请输入用户名:");
name=scanner.next();
System.out.println("请输入密码:");
password=scanner.next();if ((thisUser = adminUser.userExist(name, set)) == null) {
System.out.println("该用户不存在!");
}else if (!password.equals(thisUser.getPassword())) {
System.out.println("密码错误!");
}else{
System.out.println("亲爱的" +thisUser.getName()+ ",您的登录记录为:");//得到所有的用户曾登录信息并与当前用户进行比较
Set setTime = new HashSet<>();
adminUser.splitFile(AdminUser.filePath, setTime);for(User user : setTime) {if(thisUser.getName().equals(user.getName())) {
System.out.println(user);
}
}
System.out.println("您现于" +adminUser.loginTime()+ "登录!");
adminUser.userLogin(name, password,
adminUser.loginTime(), set);
}
}else{
System.out.println("还没有用户注册!");continue;
}break;case 3:
adminUser.readUser();break;case 4:
System.out.println("已退出!");
System.exit(0);default:
System.out.println("输入有误!...");continue;
}
}
}
}