java - 将用户输入与文本文件中的字符串进行比较

标签 java

我试图将用户的名字和姓氏与文本文件中的名称进行比较,如果匹配,则生成输出。如果名称不匹配,则程序会给出错误。当我运行程序时,我不断收到错误“线程“main”中的异常 java.lang.ClassCastException:java.io.File 无法转换为 java.lang.Readable” 在 ReadFile.main(ReadFile.java:24)"

public class ReadFile {

    public static void main(String[] args) throws FileNotFoundException {
        // TODO Auto-generated method stub
        @SuppressWarnings("resource")
        Scanner Input = new Scanner(System.in);
        System.out.print("Enter First Name:");
        String FirstName = Input.nextLine();

        @SuppressWarnings("resource")
        Scanner Input1 = new Scanner(System.in);
        System.out.print("Enter Last Name:");
        String LastName = Input1.nextLine();

        String UserFile = "UserFile.txt";
        @SuppressWarnings("resource")
        //BufferedReader inputStream =new BufferedReader(new FileReader("myfile.txt")); 
        Scanner inputStream = new Scanner((Readable) new File(UserFile));


        String line = inputStream.nextLine();
        inputStream.useDelimiter("[\\r,]");
        while (inputStream.hasNext())
        {
            //contains name
        //String line = inputStream.next();

            //split names
             String [] arrayName = line.split(",");
             String FName = arrayName[0];
             String LName = arrayName[1];           

             if(FirstName.equals(FName) && LastName.equals(LName)) 
             {
                 System.out.println("You are Logged IN");
             }

             else 
             {
                 System.out.println("You need to create a new account");
             }

        }


    }



    }

最佳答案

您正在将文件转换为可读。

Scanner inputStream = new Scanner((Readable) new File(UserFile));

删除它并用 try 和 catch 包围该语句。

Scanner inputStream = null;
try
{
    inputStream = new Scanner(new File(UserFile));
}
catch(Exception e)
{
    e.printStackTrace();
}
finally
{
    if(inputStream != null)
    {
        inputStream.close();
    }
}

关于java - 将用户输入与文本文件中的字符串进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43373857/

相关文章:

java - 从 byte[] 创建 com.lowagie.text.Image 的实例

java - 约束布局不适合不同设备

java - java中如何将文件路径写入json文件

java - Web 应用程序的类似电子表格的控件?

java - 在 Java 中膨胀 byte[] 时出现问题?

java - 在 Alert 上调用 initOwner 时的 NPE (JavaFX)

java - if(objValue instanceof Date) objValue store string 它的工作与否?

java - 运行时应用程序 self 保护 (RASP)

java - Java String split() 的意外行为

java - 在 Java 中声明限定符的正确方法是什么