4

Javaを使用してWindowsPC上のファイルまたはディレクトリのネットワークパスを取得するにはどうすればよいですか?通常、Windowsの共有フォルダのプロパティで確認できます。以下に示すように..... ここに画像の説明を入力してください

4

2 に答える 2

2

Java を使用すると、net SHAREコマンドをクラスexecのメソッドに渡し、クラスRuntimeからの出力ストリームを解析してProcess、ディレクトリの対応するネットワーク パスを取得できます。コマンドの出力は次のnet SHARE directory_nameとおりです。

Share name        Share
Path              C:\Share
Remark
Maximum users     No limit
Users
Caching           Manual caching of documents
Permission        user, FULL

上記の出力から Path キーの値を取得する必要があります。以下は、これを実現する方法の疑似コードです。

    Process process = Runtime.getRuntime().exec("net SHARE directory_name");
    BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    StringWriter writer = new StringWriter();
    String line;

    while (null != (line = reader.readLine())) {
        writer.write(line);
    }

    System.out.println(writer.toString());
于 2011-10-04T15:59:12.253 に答える
0

呼び出す API はWNetEnumResourceです。Windows API を呼び出すには、JNI を使用する必要があります。例はhttp://public.m-plify.net/sourcecode/にあります。

于 2011-10-04T18:53:16.900 に答える