java - 将用户输入与文本文件进行比较(读取文本文件)
问题描述
我无法让程序读取文本文件中的信息并将其与用户输入进行比较。如果输入和文本匹配,则将显示菜单,否则将锁定用户。我听说过缓冲线,但我不确定它是如何工作的。任何帮助将不胜感激!!
import java.util.Scanner;
import java.io.*;
public class test123{
public static void main(String[] args)throws IOException {
Scanner sc1 = new Scanner (System.in);
System.out.println("Please enter correct credentials to log in");
System.out.println("Username: ");
System.out.println("Password: ");
String userName = sc1.nextLine();
String passWord = sc1.nextLine();
File inFile = new File ("employee.txt");
while (sc1.hasNextLine())
{
Scanner sc = new Scanner (inFile);
String [] arrayName= new String [4];
String uName = arrayName[0];
String pWord = arrayName[1];
String line = sc.nextLine();
line = sc.nextLine();
if(userName.equals(uName) && passWord.equals(pWord))
{
System.out.println("Welcome " + userName + "!");
System.out.println("Menu: ");
System.out.println("\t1) Account");
System.out.println("\t2) Payroll");
System.out.println("\t3) Attendance Report");
System.out.println("\t4) Service Desk");
}
}
}
}
解决方案
你Scanner sc = new Scanner(inFile);
应该在你的while循环之外。
另请查看此资源:https ://www.geeksforgeeks.org/different-ways-reading-text-file-java/
推荐阅读
- asp.net - asp.net中对IIS的实际需求是什么
- postgresql - 查询工作很慢
- php - SSL 对等点收到的证书有一些未指明的问题
- azure - 如何为多个 Azure 门户帐户上的 AD 用户启用 SSO
- r - 基于条件的数据子集的累积和
- python - Python csv - 适合单元格的大小以适合字符串的长度?
- android - 在ROOM中连接表时,表中的字段同名问题
- laravel - Laravel 未定义变量错误
- unix - 使用 Unix 按多列分组(一列以逗号分隔,另一列以 sum )
- android - 当我在 Kotlin 中使用 Delegates 时,map 和 mapVal 之间哪一个是正确的?