仅使用Java创建登录系统,不使用数据库和Jpanel/Jswing
所以基本上这是家庭作业/课堂作业,我们被要求避免使用J.Frame和数据库以及所有这些东西。那么我如何创建一个有4个用户名的登录系统,每个用户都有自己的名字和姓氏呢?正如您在下面看到的,当前它只要求输入密码,而不要求输入用户名、密码以及用户的名字和姓氏。我还找到了代码,但我不确定如何添加新用户名和其他两个变量,代码是由stackoverflow上的某个人创建的,所以我不确定是否可以在这里发布仅使用Java创建登录系统,不使用数据库和Jpanel/Jswing,java,login,system,Java,Login,System,所以基本上这是家庭作业/课堂作业,我们被要求避免使用J.Frame和数据库以及所有这些东西。那么我如何创建一个有4个用户名的登录系统,每个用户都有自己的名字和姓氏呢?正如您在下面看到的,当前它只要求输入密码,而不要求输入用户名、密码以及用户的名字和姓氏。我还找到了代码,但我不确定如何添加新用户名和其他两个变量,代码是由stackoverflow上的某个人创建的,所以我不确定是否可以在这里发布 /** * @param args the command line arguments */ st
/**
* @param args the command line arguments
*/
static Scanner s = new Scanner(System.in);
public static void main(String[] args) throws IOException{
// TODO code application logic here
login("James");
String[][] data = generateData();
while(true){
System.out.println("\n1 for printing");
System.out.println("2 for charges");
System.out.println("3 for payment");
System.out.println("4 for adding a new account");
System.out.println("0 to exit");
System.out.print("What you want to do: ");
int input = 0;
try{
input = Integer.parseInt(s.nextLine());
} catch(NumberFormatException e){
System.out.println("Wrong input, must enter an integer!");
continue;
}
if (input == 0){
printToFile(data);
break;
} else{
switch(input){
case 1: printing(data);
break;
case 2: charges(data);
break;
case 3: payment(data);
break;
case 4: add(data);
data = generateData();
break;
default: System.out.println("Wrong input, must enter 0-4!");
}
}
}
}
public static void add(String[][] x) throws IOException{
System.out.print("Enter your student ID: ");
String a = s.nextLine();
System.out.print("Enter your First Name: ");
String b = s.nextLine();
System.out.print("Enter your Last Name ");
String c = s.nextLine();
System.out.print("Enter your Contact Number: ");
String d = s.nextLine();
System.out.print("Enter your Email Address: ");
String e = s.nextLine();
System.out.print("Enter your Car Plate Number: ");
String f = s.nextLine();
System.out.print("Enter Today's Date: ");
String g = s.nextLine();
int counter = x.length;
File data = new File("data.txt");
PrintWriter y = new PrintWriter(data);
y.println(counter+1);
for(int i=0; i<counter; i++){
y.println();
y.println(x[i][0]);
y.println(x[i][1]);
y.println(x[i][2]);
y.println(x[i][3]);
y.println(x[i][4]);
y.println(x[i][5]);
y.println(x[i][6]);
}
y.println();
y.println(a);
y.println(b);
y.println(c);
y.println(d);
y.println(e);
y.println(f);
y.println(g);
y.close();
}
public static void printToFile(String[][] x) throws IOException{
int counter = x.length;
File data = new File("data.txt");
PrintWriter y = new PrintWriter(data);
y.println(counter);
for(int i=0; i<counter; i++){
y.println();
y.println(x[i][0]);
y.println(x[i][1]);
y.println(x[i][2]);
y.println(x[i][3]);
y.println(x[i][4]);
y.println(x[i][5]);
y.println(x[i][6]);
}
y.close();
}
public static void login(String password){
System.out.print("Enter your password: ");
String input = s.nextLine();
int i = 0;
while(true){
if( !(input.equals(password)) ){
System.out.println("Wrong password!");
if(i==1){
System.exit(0);
}
System.out.println("Last chance!");
System.out.print("Enter your password: ");
input = s.nextLine();
i++;
} else{
break;
}
}
}
public static String[][] generateData() throws IOException{
File x = new File("data.txt");
Scanner y = new Scanner(x);
int counter = Integer.parseInt(y.nextLine());
String[][] data = new String[counter][7];
for(int i=0; i<counter; i++){
y.nextLine();
data[i][0] = y.nextLine();
data[i][1] = y.nextLine();
data[i][2] = y.nextLine();
data[i][3] = y.nextLine();
data[i][4] = y.nextLine();
data[i][5] = y.nextLine();
data[i][6] = y.nextLine();
}
y.close();
return data;
}
public static void printing(String[][] data){
int length1 = data.length;
int length2 = data[0].length;
for(int i=0; i<length1; i++){
System.out.println(" ID "+Integer.parseInt(data[i][0])+", First Name: "+data[i][1]+", Last Name: "+data[i][2]+", Contact Number: "+data[i][3]+", Email Address: "+data[i][4]+", Car Number: "+data[i][5]+", Date Registered: "+data[i][6]);
}
}
public static void charges(String[][] data){
int length1 = data.length;
for(int i=0; i<length1; i++){
System.out.println((i+1)+" for "+data[i][0]);
}
System.out.print("Who you want to charge: ");
int input = Integer.parseInt(s.nextLine());
System.out.print("How much you want to charge "+data[input-1][0]+": ");
data[input-1][2] = ""+(Double.parseDouble(data[input-1][2]) + Double.parseDouble(s.nextLine()));
}
public static void payment(String[][] data){
int length1 = data.length;
for(int i=0; i<length1; i++){
System.out.println(" (ID "+Integer.parseInt(data[i][1]));
}
System.out.print("Who want to pay: ");
int input = Integer.parseInt(s.nextLine());
System.out.print("How much "+data[input-1][0]+" want to pay: ");
data[input-1][2] = ""+(Double.parseDouble(data[input-1][2]) - Double.parseDouble(s.nextLine()));
}
}是否允许您将用户名/密码存储在文本文件中?您知道变量名可以超过一个字母长吗?@immibis您的意思是什么?好的,那么您使用的是哪一部分?加载文件?比较价值观?提示用户?我不知道从哪里开始,我甚至不知道你可以使用txt文件在上面写用户名:\@MadProgrammer好的,我正在搜索关于此的代码。。