亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java.nio.file.Files 移動操作

java.nio.file.Files 移動操作

開滿天機 2022-05-21 13:53:51
我在我的程序中使用了 Files.move 方法,如下所述。 public boolean moveAndRenameFile(String targetPath, String newName)  {    boolean fileMoved = true;    try    {      Path pathToFile = FileSystems.getDefault().getPath(targetPath);      Files.move(Paths.get(path), pathToFile.resolve(newName), StandardCopyOption.REPLACE_EXISTING);    }    catch (InvalidPathException | IOException e)    {      LOGGER.error("File couldn't be moved from {} to target location {}", path, targetPath);      LOGGER.error(e.getMessage(), e);      fileMoved = false;    }    return fileMoved;  }如果中間發生任何異常/錯誤,是否有可能從原始位置刪除文件但不移動到目標位置?我瀏覽了以下鏈接,但找不到這個問題的答案。 https://docs.oracle.com/javase/tutorial/essential/io/move.html
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

在該過程完成之前,原始(源)文件不會被刪除。但是不完整/損壞的文件將保存在目標中。


您可以通過自己做一個小測試來確認這一點。將文件移動到可移動磁盤并在該過程結束之前拔下可移動設備。


查看完整回答
反對 回復 2022-05-21
?
www說

TA貢獻1775條經驗 獲得超8個贊

對于同一個存儲提供者,它使用原生移動。

否則它會做一個

copyToForeignTarget(...);
Files.delete(source);

所以不會有問題。


查看完整回答
反對 回復 2022-05-21
  • 2 回答
  • 0 關注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號