Java 如何将JFrame内容保存到文件
我正在尝试制作一个程序,要求用户提供信息,然后当他们单击“保存”时,文本框和标签以及所有内容都保存到一个文件中,以便能够共享。如果需要,它可以是任何类型的文件。该信息位于JFrame内的选项卡式窗格中。这是我当前的保存方法Java 如何将JFrame内容保存到文件,java,swing,jframe,Java,Swing,Jframe,我正在尝试制作一个程序,要求用户提供信息,然后当他们单击“保存”时,文本框和标签以及所有内容都保存到一个文件中,以便能够共享。如果需要,它可以是任何类型的文件。该信息位于JFrame内的选项卡式窗格中。这是我当前的保存方法 FileFilter ft = new FileNameExtensionFilter("Text Files", "txt", "jpg","png", "jpeg"); db.addChoosableFileFilter(ft); int returnVa
FileFilter ft = new FileNameExtensionFilter("Text Files", "txt", "jpg","png", "jpeg");
db.addChoosableFileFilter(ft);
int returnVal = db.showSaveDialog(this);
if (returnVal == javax.swing.JFileChooser.APPROVE_OPTION) {
java.io.File saved_file = db.getSelectedFile();
String file_name = saved_file.toString();
try {
WriteFile data = new WriteFile(file_name, false);
String allText = JFrame.toString(); //Line im having trouble with
data.writeToFile(allText);
} catch (java.io.IOException e) {
System.out.println(e.getMessage());
}
}
JFrame.toString
不会为您提供任何要保存的状态
正确的方法是从文本框中获取每个值并手动保存/重新加载到文件中
您可以尝试的另一种方法是将整个JFrame序列化为一个文件。更多信息请看这个 您是否试图以另一个程序可以再次重建的方式保存JFrame?我不认为您可以这样做,我假设该行只保存实例文本表示。如果要保存和重建JFrame,需要保存正在使用的数据(在标签和框中),并编写代码从保存的数据进行解析和重建。这就是为什么在向应用程序添加GUI之前,应该为应用程序构建逻辑模型的原因。
JFrame
的帖子我担心我必须手动完成。不过,我将研究Java文档。非常感谢。