【问题标题】:Writing Contents of TextArea to File将 TextArea 的内容写入文件
【发布时间】:2013-08-01 19:59:03
【问题描述】:

我目前正在用 Java 转换所有使用“J”组件的旧应用程序 到更新、更时尚的 JavaFX 平台。

以前在我的一个应用程序中,您可以将 TextArea 的内容写入文件,并以适当的间距缩进,就像您在文本区域中以图形方式看到的那样。您是通过使用 JTextArea 类继承的 write() 方法完成的。

有没有办法用 JavaFX 文本区域来做这件事,或者我什至可以解析文件并这样做?

我们将不胜感激!

JTextArea 中用于写入文件的代码:

public static void writeFile(File fileName) throws IOException{
    BufferedWriter fileOut = new BufferedWriter(new FileWriter(fileName));
    Gui.getTextArea().write(fileOut);
}

【问题讨论】:

    标签: java text javafx area


    【解决方案1】:

    试试这个代码

    public void fileWriter(File savePath, TextArea textArea) {
            try {
                BufferedWriter bf = new BufferedWriter(new FileWriter(savePath));
                bf.write(textArea.getText());
                bf.flush();
                bf.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
    
        }
    

    【讨论】:

      【解决方案2】:

      您可以通过遍历文本区域并将内容写入文件来做到这一点:

          ObservableList<CharSequence> paragraph = textArea.getParagraphs();
          Iterator<CharSequence>  iter = paragraph.iterator();
          try
          {
              BufferedWriter bf = new BufferedWriter(new FileWriter(new File("textArea.txt")));
              while(iter.hasNext())
              {
                  CharSequence seq = iter.next();
                  bf.append(seq);
                  bf.newLine();
              }
              bf.flush();
              bf.close();
          }
          catch (IOException e)
          {
              e.printStackTrace();
          }
      

      【讨论】:

      • 非常感谢。这样做的好方法!感谢您的帮助
      猜你喜欢
      • 1970-01-01
      • 2010-11-09
      • 2016-09-28
      • 2012-05-18
      • 1970-01-01
      • 1970-01-01
      • 2013-12-09
      • 2014-02-28
      • 2014-09-28
      相关资源
      最近更新 更多