2017-03-22 2 views
0

ディレクトリの名前を変更したいと思います。Javaのフォルダ名を変更する方法

私は、コードの次の部分があります

Files.move(dir.toPath(), newDir.toPath(), StandardCopyOption.REPLACE_EXISTING); 

を私はコードを実行したときに、私はこのエラーを取得するには、次の例外が返されます。

java.nio.file.FileAlreadyExistsException: C:\ws\dir -> C:\ws\aux 

私はフォルダCことを確認しています:\ WS \ NEWDIRが存在し、しませんC:\ WS \ DIRはありません。

私もFile.renameTo()を試しましたが、フォルダでは動作しません。万一はあなたのために働くこのofficial tutorial

import static java.nio.file.StandardCopyOption.*; 
... 
Files.move(source, target, REPLACE_EXISTING); 

に基づいて

+0

明らかに、問題はディレクトリ 'aux'の新しい名前と関連しています。私が名前を変えたとき、それは働き始めた。 – JCalcines

+0

その場合、移動前にdestフォルダの存在を確認するコードを追加します。 – antonio081014

+0

フォルダを確認しましたが、存在しませんでした。それは非常に奇妙な問題でした。とにかく、最終的な名前は重要ではないので、問題は解決されます。 – JCalcines

答えて

5

第3パラメータには他のコピーオプションを使用することもできます。ファイルまたはフォルダの存在を確認するために

、このlink

チェックアウトこのlinkをチェックアウト。

ところで、あなたはDir/Fileを移動するための適切な権限を持っていることを確認してください。に一度だけ移動します。

+0

私は3番目のパラメータを追加して質問を更新しました。それは動作しないし、運命のフォルダが存在しません。 – JCalcines

+0

明らかに、この問題はファイルの名前と関連していました。他のケースでは正確であるため、私はあなたの答えを受け入れています。ありがとうございました! – JCalcines

関連する問題