gpt4 book ai didi

Java Swing 使用文本文件中的数据填充多个 JTextField

转载 作者:太空宇宙 更新时间:2023-11-04 10:32:23 25 4
gpt4 key购买 nike

我正在尝试使用 swing 制作通讯录,但在使用文件中的数据填充文本字段时遇到问题。

我有名字、姓氏、地址和电话号码(字符串)的框,文本文件的结构如下:

Name
Surname
Address
Phone
Name
Surname
Address
Phone
...

我有一个 ArrayList 来保存联系人,当我使用 contacts.add(String, String, String, String) 代替从文件中读取数据时,我成功地在 TextFields 中显示数据。

我尝试从文件中读取数据,但似乎不起作用。

尝试{

    this.myFile = new File("contacts.txt");
this.scan = new Scanner(myFile);

while (scan.hasNext()) {

contact = new Contact(scan.next(), scan.next(), scan.next(), scan.next());
contacts.add(contact);

}
}
catch (InputMismatchException e) {
System.err.println("Invalid");
}
catch (FileNotFoundException e) {
System.err.println("Not found");
}
finally {
if (scan != null) {
scan.close();
}
else {
System.out.println("empty");
}
}

使用数据库会更容易/更好吗?谢谢

最佳答案

您只检查下一行,但尝试在第一行之后读取接下来的三行而不进行检查。

scan.next();// reads until next token

试试这个

scanner.nextLine();//read until the end of line. 

您的逻辑应该在每次扫描之前进行检查,并在 4 次扫描之间创建一个新的联系人对象来存储信息。

关于Java Swing 使用文本文件中的数据填充多个 JTextField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49863151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com