细节不足

时间:2013-12-02 12:16:55

标签: java

我正在开展一个项目,我已经定义了一个搜索我的客户文本文件的搜索功能,提到有一个名为" record"的文本文件,在项目中定义的注册后,将存储哪些新客户详细信息。因此,每当我搜索特定ID时,它运行良好,但问题是我希望输出其他详细信息,如他/她的姓名,性别,年龄。我现在所有的输出是 - > "它的发现" 这是代码:

    public void searchfile(String input){

    try{

        String details, id, line;
        int count;
        Scanner housenumber = new Scanner(new File("records.txt"));
        while(housenumber.hasNext())
        {
            id = housenumber.next();
            line = housenumber.nextLine();
            if(input.equals(id))
            {

                JOptionPane.showMessageDialog(null,"It's Found" );
                break;
            }
            if(!housenumber.hasNext())      
                JOptionPane.showMessageDialog(null,"Sorry, ID Does Not Exist" );
        }
   }

     catch(IOException e)
   {
     System.out.print("File failure");
   }
};

1 个答案:

答案 0 :(得分:1)

在不知道您扫描的文件是如何格式化的情况下,很难回答您的问题。如果格式如下:

id
name gender age
id
name2 gender age
etc.

您可以尝试这样的事情:

id = housenumber.next();
line = housenumber.nextLine();
if(input.equals(id))
{    
    //This should the next line instead of just "It's found"
    JOptionPane.showMessageDialog(null,line);

    //Assuming the above file layout, you could then do something like this:
    String[] parts = line.split("\\s+"); //Splits on whitespace

    System.out.println("name: " + parts[0]);
    System.out.println("gender: " + parts[1]);
    System.out.println("age: " + parts[2]);
    break;
}