我想添加一個擴展名到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