我需要保存一个文本文件,该文件已经在JFileChooser给出的特定路径中创建。我基本上要保存的是:
public void actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
int status = chooser.showSaveDialog(null);
if (status == JFileChooser.APPROVE_OPTION) {
System.out.print(chooser.getCurrentDirectory());
// Don't know how to do it
}
如何将文本文件保存在JFileChooser
给出的路径中?
答案 0 :(得分:2)
您想在if
声明之后添加以下内容:
File file = chooser.getSelectedFile();
FileWriter fw = new FileWriter(file);
fw.write(foo);
其中foo
是您的内容。
修改强>
如果你想写一个文本文件,我建议如下:
PrintWriter out = new PrintWriter(file);
BufferedReader in = new BufferedReader(new FileReader(original));
while (true)
{
String line = in.nextLine();
if (line == null)
break;
out.println(line);
}
out.close();
其中original
是包含您要写入的数据的文件。
答案 1 :(得分:-1)
使用文件的路径和名称
创建一个新的File对象File file = new File(String pathname)
答案 2 :(得分:-1)
试试这个:
public void actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
int status = chooser.showSaveDialog(null);
if (status == JFileChooser.APPROVE_OPTION) {
FileWriter out=new FileWriter(chooser.getSelectedFile());
try {
out.write("insert text file contents here");
}
finally {
out.close();
}
}
// ...
除chooser.getCurrentDirectory()
提供的目录外,您还需要要保存的文件名,但这应该是您需要的。当然,您还需要编写实际写入流的save
方法,但这取决于您。 :)
编辑:根据线程中的另一个答案,这里应该使用的方法很多,chooser.getSelectedFile()
。更新以使用该方法。
编辑:由于OP指定正在写入的文件是文本文件,我添加了代码来写入文件的内容。当然,您需要将"insert text file contents here"
替换为要写入的实际文件内容。