Java verwendet Dateien, um die Anmeldefunktion zu implementieren

【beschreiben】:

        Bei der Verwendung der Java-Sprache zur Implementierung einiger einfacher Verwaltungssysteme ist es häufig erforderlich, die entsprechenden Dateikenntnisse zu nutzen, um die Anmeldefunktion zu implementieren.

        Das heißt, wenn sich der Benutzer/Administrator beim System anmeldet, muss das System prüfen, ob der vom Benutzer/Administrator eingegebene Benutzername, die Kontonummer und das Passwort korrekt sind. Nur wenn der Benutzername, die Kontonummer und das Passwort korrekt sind Wenn alles korrekt eingegeben wurde, kann die Anmeldung erfolgreich sein.

        In diesem Artikel verwende ich zur Veranschaulichung die Benutzeranmeldung als Beispiel

【Code】:

public static void userLogin() throws IOException {//用户登录
		@SuppressWarnings("resource")
		Scanner sc=new Scanner(System.in);
		while(true) {
			System.out.println("==============管理员登录页面==============");
			System.out.print("请输入姓名:");
			String name=sc.nextLine();
			System.out.print("请输入密码:");
			String code=sc.nextLine();
			if(check1(name,code)==true) {//检查输入的姓名或者密码是否正确
				System.out.println("登录成功!");
				userMenu();
				break;
			}
			else {
				System.out.println("密码错误或者用户名错误,请重新输入!");
			}
		}
	}
	private static boolean check1(String name,String code) throws IOException {
		String dir="D:/programming/MyJava/用户信息.txt";
		File file=new File(dir);
		if(!file.exists()){
			file.createNewFile();
		}
		@SuppressWarnings("resource")
		BufferedReader b=new  BufferedReader(new FileReader(file));
		String temp=null;
		temp=b.readLine();//先读取一行
		while(temp!=null) {
			String sbstring=temp.toString();//转化为String
			int n=sbstring.length();//测字符串长度
			String []message=new String[2];
			int k=0;
			for(int i=0;i<2;i++) {
				message[i]="";
			}
			for(int i=0;i<n;i++) {
				if(sbstring.charAt(i)==',') {
					k++;
				}
				else {
					message[k]+=sbstring.charAt(i);
				}
				//System.out.print(sbstring.charAt(i));
			}
			if(name.equals(message[0])&&code.equals(message[1])) {
				return true;
			}
			temp=b.readLine();
		}
		return false;	
	}

【erklären】:

        Die charAt()-Methode gibt das Zeichen am angegebenen Index zurück. Der Indexbereich ist 0~length()-1; daher werden die Informationen vor dem ersten Semikolon (,) im Array message[0] gespeichert. In message[1 ] Die Informationen nach dem ersten Semikolon werden gespeichert. (Wenn die Informationen in Ihrer Datei nur zwei Spalten umfassen, ist nur ein Semikolon pro Zeile erforderlich.)

Freunde, die es nicht verstehen, können es selbst ausgeben und werden feststellen, dass System.out.println(message[0]) alle Informationen in der ersten Spalte ausgibt, während System.out.println(message[1]) ausgibt die gesamten Informationen in der ersten Spalte. Alle Informationen in der zweiten Spalte.

 

Guess you like

Origin blog.csdn.net/ZQY211210400628/article/details/130937042