【问题标题】:How to save content from a JTextField into a file [duplicate]如何将 JTextField 中的内容保存到文件中[重复]
【发布时间】:2013-09-25 09:10:39
【问题描述】:

我正在做一个项目,我在 JFrame 中输入食谱及其相应的信息(标题、成分、实用程序、说明),然后我想将该内容保存到文件中。用户输入数据的字段是(标题、成分等),它们是 JTextFields。我需要知道的是如何将 JTextField 中的文本写入新文件。我希望每个字段都有自己的文件,因此仅食谱的标题就有自己的文件,例如stirfry.txt,然后内容将是“搅拌”

任何反馈将不胜感激

【问题讨论】:

    标签: java swing file-io jtextfield jtextarea


    【解决方案1】:

    使用 getText() 函数获取文本字段的内容 使用 java.io 创建一个新文件 并使用 BufferedStream 写入文件的内容。

    【讨论】:

    • 不要重新发明轮子。使用 JTextField 的write() 方法。
    【解决方案2】:

    这会有帮助吗?

    void saveToFile(String fileName, JTextField textField) throws Exception {
       FileOutputStream out = new FileOutputStream(fileName, true);
       out.write(textField.getText().getBytes());
    } 
    

    【讨论】:

    • 每次调用都会覆盖内容
    • @MadProgrammer - 更新了附加到文件的代码。
    【解决方案3】:

    试试

    JTextField titleTextField = ...;
    String title = titleTextField.getText();
    FileWriter fw = new FileWriter(new File(title+".txt"));
    fw.write(title);
    fw.close();
    

    【讨论】:

      【解决方案4】:

      问题取决于您希望文件采用的格式。

      可以使用JTextField#getText 检索字段的文本。更多详情请查看How to use text fields...

      例如,如果您只有一对键/名称值,您可以简单地将文本字段中的每个值添加到Properties 对象中,并利用它的save 功能。另一个好处是能够通过Properties API 再次加载文件。查看Properties 教程了解更多详情

      但是,这确实假设每个元素都是唯一的。

      如果您需要更复杂或更灵活的数据结构,您可能需要使用 XML。幸运的是,Java 有一个绑定 API,可以让您将对象转换为 XML 和从 XML 转换。更多详情请查看Introduction to JAXB

      最终的解决方案是使用某种数据库;)

      【讨论】:

      • 非常有帮助,感谢您的链接
      猜你喜欢
      • 2014-01-05
      • 1970-01-01
      • 2015-02-05
      • 2012-01-06
      • 1970-01-01
      • 2015-06-24
      • 2014-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多