首页 > 解决方案 > 将 JList 保存到 Txt 文件中

问题描述

在寻找了几个小时的答案后,我决定在这里问它,因为我找到的解决方案不起作用。

我有一个简单的 GUI 来注册一个人的名字/姓氏和出生日期。输入值后,数据将列在 JList 中。现在我想将 JList 中的数据保存到 Txt 文件中。但我找不到从 JList 获取数据的方法。

public void save(){
    try(BufferedWriter bw = new BufferedWriter(new FileWriter("jlist.txt")))
    {
        /* Here should be the part, where I get the data from the JList */

        bw.write(person.getNachname() + " ; " + person.getVorname() + " ; " + person.getDate() + "\n");
    } catch (Exception speichern) {
        speichern.printStackTrace();
    }
}

稍后我想获取创建的 Txt 文件并将其加载回同一个 JList。

也许还有更好的方法可以做到这一点,但我还没有找到任何东西。

一些提示会很有帮助:)

标签: javaswing

解决方案


没有 JList 方法可以为您执行此操作。

您需要从ListModel.

ListModelJList使用getModel()方法中得到。

您需要编写一个循环来:

  1. ListModel使用该getElementAt(...)方法获取每个元素。
  2. 将元素转换为字符串并将数据写入文件。

一些提示会有所帮助

与您的问题无关,但通常这样的数据会显示在 JTable 中。然后,每个名字、姓氏和日期都有一个单独的列。阅读 Swing 教程中有关如何使用表格的部分以获取更多信息。


推荐阅读