Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将TextArea的内容写入文件_Java_Text_Javafx_Area - Fatal编程技术网

Java 将TextArea的内容写入文件

Java 将TextArea的内容写入文件,java,text,javafx,area,Java,Text,Javafx,Area,我目前正在用Java转换所有使用“J”组件的旧应用程序 到更新、更时尚的JavaFX平台 以前在我的一个应用程序中,您可以将文本区域的内容写入一个文件,并以缩进的方式很好地隔开,正如您在文本区域中以图形方式看到的那样。这是通过使用JTextArea类继承的write()方法实现的 有没有办法用JavaFX文本区域来实现这一点,或者我甚至可以通过解析文件来实现这一点 非常感谢您的帮助 JTextArea中用于写入文件的代码: public static void writeFile(File fi

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

以前在我的一个应用程序中,您可以将文本区域的内容写入一个文件,并以缩进的方式很好地隔开,正如您在文本区域中以图形方式看到的那样。这是通过使用JTextArea类继承的write()方法实现的

有没有办法用JavaFX文本区域来实现这一点,或者我甚至可以通过解析文件来实现这一点

非常感谢您的帮助

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

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

可以通过迭代文本区域并将内容写入文件来实现:

    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();
    }
observeListParague=textArea.getParagions();
迭代器iter=段落迭代器();
尝试
{
BufferedWriter bf=新的BufferedWriter(新的FileWriter(新文件(“textArea.txt”));
while(iter.hasNext())
{
CharSequence seq=iter.next();
bf.追加(seq);
bf.newLine();
}
bf.flush();
bf.close();
}
捕获(IOE异常)
{
e、 printStackTrace();
}
试试这段代码

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();
        }

    }

非常感谢你。做这件事的好方法!谢谢你的帮助