我想添加一个扩展名到JFileChooser
所选的文件名,尽管我无法让它工作。文件renameTo不起作用
这是代码:
final JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
int returnVal = fc.showSaveDialog(null);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File f = fc.getSelectedFile();
String name =f.getAbsoluteFile()+".txt";
f.renameTo(new File(name));
FileWriter fstream;
try {
fstream = new FileWriter(f);
BufferedWriter out = new BufferedWriter(fstream);
out.write("test one");
out.close();
} catch (IOException ex) {
Logger.getLogger(AppCore.class.getName()).log(Level.SEVERE, null, ex);
}
}
我想不通为什么这是行不通的。我也试过使用getPath()和getCanonicalPath(),但结果是一样的。该文件在选定的目录下创建,但没有“.txt”扩展名。
你检查从'renameTo结果这是来自Java文档“这种方法是否可以将文件从一个文件系统移动到另一个文件系统取决于平台,应始终检查返回值以确保重命名操作是成功的。” – twain249 2012-04-01 18:04:01
是它始终返回false。唯一的工作是当我手动设置新的文件名但不包括路径:“test.txt”。创建了一个包含“test one”但不在选定目录的txt – Giannis 2012-04-01 18:05:42
你确定目标文件不存在? – 2012-04-01 18:06:54