1
我想將文件保存到用戶從一個目錄中選擇的另一個目錄。我知道JFileChooser
可以用來選擇一個文件。但是不使用任何輸出流,有什麼方法可以將文件從一個位置移動到另一個位置?使用JFileChooser保存文件
我想將文件保存到用戶從一個目錄中選擇的另一個目錄。我知道JFileChooser
可以用來選擇一個文件。但是不使用任何輸出流,有什麼方法可以將文件從一個位置移動到另一個位置?使用JFileChooser保存文件
只有當它們位於相同的本地磁盤文件系統時,您纔可以使用File#renameTo()
。
File sourceFile = createItSomehow();
File targetFile = chooser.getSelectedFile();
boolean renamed = sourceFile.renameTo(targetFile);
if (!renamed) {
// Well, perhaps they are not on the same disk?
}
對於所有其他情況,只需流式傳輸,您真的會更好。另請參見鏈接的javadoc:
這種方法的行爲的許多方面是天生的平臺依賴性:重命名操作可能無法從一個文件系統的文件移動到另一個,它可能不是原子,並如果具有目標抽象路徑名的文件已經存在,它可能不會成功。應始終檢查返回值以確保重命名操作成功。