5

Mac OSX 上の Java からネットワーク フォルダ / UNC パスにアクセスしようとしています。Windows では、次のテスト プログラムが正常に動作します (テストされたパスの少なくとも 1 つ)。

public class PathTest {
    public static void main(String[] args) {

        for (String path : Arrays.asList(
                "\\\\myserver\\transfer", "//myserver/transfer", "file://myserver/transfer", "smb://myserver/transfer")) {

            File f = new File(path);
            System.out.println(path + ": " + f.getAbsolutePath() + ", " + f.exists());

            Path p = Paths.get(path);
            System.out.println(path + ": " + p.toAbsolutePath() + ", " + Files.exists(p));
        }
    }
}

Mac OS では、フォルダーに到達できません。

\\myserver\transfer: /Users/tim/IdeaProjects/PathTest/\\myserver\transfer, false
//myserver/transfer: /myserver/transfer, false
file://myserver/transfer: /Users/tim/IdeaProjects/PathTest/file://myserver/transfer, false
smb://myserver/transfer: /Users/tim/IdeaProjects/PathTest/smb://myserver/transfer, false

Finder を使用すると、"smb://myserver/transfer" を使用して (Guest ユーザーを使用して) フォルダーにアクセスできます。どうしたの?

EDIT追加NIO.2テスト

4

1 に答える 1