检查输入字符串名称是否在文本文件中,我不知道为什么它不起作用

时间:2015-09-06 08:40:11

标签: java

我的文字文件包括: 汤姆,本,凯文,结婚,乐,埃里克

 public static void main(String[] args) throws IOException 
    {      
       Scanner sc = new Scanner (new FileReader("name.txt"));
       String Name;
       Scanner in = new Scanner(System.in);       

       System.out.println("Enter a name:");
       Name= in.nextLine();

       String name = null;
       while(sc.hasNext())
       {
           name= sc.next();
       }
       if (Name.equals(name))
       {
           System.out.println("Yes");
       }       
       else
       {
           System.out.println("No");
       }

我不知道如何解决它,请帮助。

1 个答案:

答案 0 :(得分:0)

这是因为你首先浏览所有文件,然后检查最后一个单词。

您需要将其更改为此代码:

while(sc.hasNext())
{
    name= sc.next();   
    String [] Str=name.split(",");

    for(int i = 0; i < Str.length(); ++i)
    { 
       if (Name.equals(Str[i]))
       {
           System.out.println("Yes");
       }       
       else
       {
           System.out.println("No");
       }       
    }
 }