【问题标题】:How to make multiple JTextFields write to one file如何让多个 JTextFields 写入一个文件
【发布时间】:2013-10-01 06:14:39
【问题描述】:

我有一个项目,其中涉及保存成分、实用程序等信息的食谱书,我需要制作输入这些详细信息的字段,将该文本保存到文件中。每个字段都是一个 JTextField。唯一被保存的是文本到 .txt。 *该类称为recipereader,但我只是在写入文件*忽略名称*如果我能得到一个显示代码看起来像什么的响应,那将不胜感激。另外,我正在使用 bufferedwriter,所以除非不可能,否则我希望保留在其中。

PrintWriter outputStream=new PrintWriter("recipe001.txt");
outputStream.println(recipeName.getText());
outputStream.close();

recipeName 是 JTextField。(我知道代码是错误的)。我希望每个JTextField 的内容都用一行呈现,这就是为什么我在做println. 它很简单,但我不知道如何从JTextFieldgetText 我的框架在另一个从这里的代码中类

【问题讨论】:

  • 发布你目前的代码。
  • 它在上面,请你帮忙
  • 那么,文件被创建但它是空的?要不然是啥?更具体。
  • 为什么在写入文件时调用类RecipeReader?

标签: java swing text jtextfield bufferedwriter


【解决方案1】:

更新:

RecipeReader(或者应该是RecipeWriter?)不应该知道数据来自 Swing GUI。换句话说,您需要设计它的方法以将String 参数与您要存储的数据一起使用。然后 GUI 代码将从每个 JTextField 调用 getText() 并将 Strings 发送到写入文件的方法。

您还需要注意,当您打开一个文件时,如果它已经存在,它将被删除。您可能应该在程序启动时打开文件一次,并仅在程序结束时关闭它。这样您就可以继续写入文件,而不会删除您之前写入文件的任何内容。

另一个选项是以“附加”模式打开文件。此处不再赘述,因为有大量在线资源解释了如何执行此操作。

原答案:

这需要您做一些工作,因为JTextFields 没有内置“文件”的概念。您将需要打开一个文件,获取每个文本文件的内容,然后将它们写入文件。完成后请务必关闭文件。

如果您在执行上述任何步骤时遇到问题,请返回更具体的问题。请务必包含代码来说明您迄今为止所做的尝试。

【讨论】:

  • 你所说的实际上正是我一直在尝试的,但是我只是不知道让我到达那里的代码
  • @OliverBath 就像其他人之前所说的那样,您需要更具体地提出问题以获得更令人满意的答案。你到底卡在哪里了?
猜你喜欢
  • 2011-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多