在Windows資源管理器,你可以有這樣的結構:文件已存在當移動文件
- 主目錄
- 新目錄
(a directory)
- 新目錄
(a file without an extension)
- 新目錄
我結構是:
- 主目錄
- 新目錄
(a directory)
- 一些FILE.TXT
- 新目錄
我試圖做的是重命名 「有些FILE.TXT」 到「新目錄「,就像你可以在資源管理器中。我使用File.Move("/Main Directory/Some File.txt", "/Main Directory/New Directory");
不過,我不斷收到一個異常說,當該文件已存在
無法創建文件。
我認爲它不喜歡有一個名爲「新目錄」的目錄。但考慮到同名的目錄和文件可能共存這一事實,我不明白爲什麼Move
API會對此有所贅述。
有什麼方法可以告訴它在複製文件時忽略具有相同名稱的目錄,反之亦然?
編輯:最近我重新安裝了Windows和忘記重新打開文件擴展名,所以我在資源管理器中重命名不修改擴展名像我習慣了這樣做。通過擴展名,我無法執行重命名。所以行爲實際上是預期的。如果有人在將來做同樣的事情,我會在這裏留下。
「但是,考慮到目錄和文件名稱可能共存的事實......」只是錯誤的:它們不能共存同名,因爲目錄就像一個文件,但有一些差異。 – zx485
你實際上是否嘗試重命名一個文件與文件夾名稱相同?我想你會發現你實際上***不能做到這一點。 – Abion47
@ zx485我剛剛意識到我的頭腦總是空白,文件擴展名關閉,所以我在資源管理器中重命名並沒有修改擴展名。使用擴展名時,我無法執行重命名。 – RareNCool