3

JCIFSでIPアドレスを指定してLAN上のコンピューターの名前を取得する方法を理解しようとしていますが、そのIP以外は取得できません。

私が使用しているコードは

    InetAddress addr = NbtAddress.getByName( ip ).getInetAddress();
    String test = UniAddress.getByName(ip).getHostName();
    System.out.println("IP: " + ip + " - addr: " + addr.getHostName() + " - test: " + test);

そして、私が得ている結果は

    IP: 10.1.2.115 - addr: 10.1.2.115 - test: 10.1.2.115

代わりに、を私が得たものに置き換えるgetHostAddress()toString()

    IP: 10.1.2.115 - addr: 10.1.2.115 - test: 0.0.0.0<00>/10.1.2.115

ここでどこが間違っていますか?

IP を使用して Mac から lib をテストしています10.1.2.117が、ターゲットは Android デバイスです。

4

4 に答える 4

1

JCIFS 停止は、1.3.14 バージョンで Netbios 名前解決をサポートします。これを停止するためのリリース ノートを見つけることができます。https://jcifs.samba.org/

于 2016-07-08T00:27:11.150 に答える
0

少し遅れましたが、jcifs 1.3.17 でも同じ問題がありました。1.2.25 に戻したところ、動作するようになりました。

于 2013-05-27T23:48:15.847 に答える
-2

代わりに標準のJavaAPIを使用できますか?もしそうなら、以下を試してください

InetAddress addr = InetAddress.getByName("127.0.0.1");
String host = addr.getHostName();
于 2013-01-11T11:25:55.073 に答える