0

私は現在 Java 7 に移行しており、すべてのクラスを新しいjava.nio.fileパッケージを使用するように変換しようとしています。ある時点で、次のようなコードを使用して、ファイルが読み書き可能かどうかを確認しようとしました。

MyClass myObject = new MyClass();
Path path = Paths.get("testDir/sub1/sub2/test.txt");
myObject.setReadable(Files.isReadable(path));
myObject.setWritable(Files.isWritable(path));

これを junit (Windows 7) でテストすると、 と の両方isReadable();isWritable();一貫してそれぞれ 25 秒間ハングしてから、戻ります。これは非常に受け入れがたいことです。これは Windows の制限でしょうか?
私のアプリケーションは最終的に UNIX で実行される予定ですが、まだテストする機会がありません。私がテストしている各ファイルは、次のコードで作成されたことに言及する必要があると思います。

Files.createFile(Paths.get("testDir/sub1/sub2/test.txt"));

物事をスピードアップするために私にできることはありますか? ありがとう!

編集:したがってpath.toFile().canRead()、canWrite() と同じように、すぐに返されるようです。それに関しては、それらのメソッドを使用できますが、本当に java.nio.file パッケージのみを使用したいと考えています。

4

1 に答える 1