注册登录模块[声明:仅供参考]
作者:文龙 QQ:584783469(欢迎交流)
可以将注册信息存入文件(注:手工创建文本文件)
用户信息存储格式:张三,1234,zhangsan@163.com;李四,123456,……
要求:
1.注册时用户名不能重复
2.登录时要判断用户名、密码是否正确
程序运行测试记录:
1. 用户注册:
2. 用户登录:
源程序代码:
////////////////////////////////////////////////////////User .java///////////////////////////////////////////////////////////////////////
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class User {
private String name;
private String sex;
private String password;
private String email;
public User() {
super();
}
public User(String name, String sex,String password, String email) {
super();
setName(name);
setSex(sex);
setPassword(password);
setEmail(email);
}
@Override
public boolean equals(Object obj) {
if(obj.getClass()==this.getClass()){
User user=(User)obj;
if(this.name.equals(user.name)){
return true;
}//如果姓名相同,就存在相同的用户
}
return false;
}
@Override
public int hashCode() {
return name.hashCode();
}
@Override
public String toString() {
return name+","+sex+","+password+","+email+"\n";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
/**
* 验证用户是否存在的方法
* @param user:当前用户
* @return userChecked:返回值
*/
static User check(User user){
User userChecked=null;
//获取已经注册的用户信息
boolean flag=false;//注册标志变量,flag=true:用户已经注册,flag=false:用户没有注
册
List<User> list=new ArrayList<User>();//存储所有账户的集合
String infomation="";//login.txt 文件中所有内容的存储变量
FileInputStream file=null;
try {
file = new FileInputStream("D:\\MyJava\\workspace\\wenlong\\src\\day18\\
homework\\login\\login.txt");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
byte[] content=new byte[20];
while(true){
int num=0;
try {
num = file.read(content);
} catch (IOException e) {
e.printStackTrace();
}
if(num==-1){
break;
}
String temp=new String(content,0,num);
infomation+=temp;
}
try {
file.close();
} catch (IOException e) {
e.printStackTrace();
}
String[] acounts=(infomation.substring(0, infomation.length()-1)).split("\n");//所有账户
的信息数组
User[] acount=new User[acounts.length];
for(int i=0;i<acounts.length;i++){
String[] info=acounts[i].split(",");
acount[i]=new User(info[0],info[1],info[2],info[3]);
list.add(acount[i]);
}
for(User human:list){
if(user.getName().equals(human.getName())){
userChecked=human;
}//根据用户名检验用户已经注册
}
return userChecked;
}
/**
* User 类测试主方法
*/
- 1
- 2
前往页