2012-04-05 7 views
2

NetworkInterfaceクラスを使用してMACアドレスを取得していますが、自分のコードでnullが発生しています。私はniオブジェクトでnullになっています。私はLAN上のデバイスのMACアドレスを取得する方法を提案しています。Javaのローカルネットワーク上のマシンのMACアドレスを取得する方法

ありがとうございます。ホスト

InetAddress address = socket.getInetAddress(); 
String hostIP = addresss.getHostAddress(); 

アシシュを取得するための

答えて

3

は、このコードを試してみてください

import java.io.*; 
import java.net.*; 
import java.util.*; 
import java.util.regex.*; 

public class GetMac 
{ 
public static void main(String[] args) 
throws IOException 
{ 
String address = new GetMac().getMacAddress(); 
System.out.println(address); 
} 

public String getMacAddress() throws IOException 
{ 
String macAddress = null; 
String command = "ipconfig /all"; 
Process pid = Runtime.getRuntime().exec(command); 
BufferedReader in = 
new BufferedReader(
new InputStreamReader(pid.getInputStream())); 
while (true) { 
String line = in.readLine(); 
if (line == null) 
break; 
Pattern p = Pattern.compile(".*Physical Address.*: (.*)"); 
Matcher m = p.matcher(line); 
if (m.matches()) { 
macAddress = m.group(1); 
break; 
} 
} 
in.close(); 
return macAddress; 
} 
} 
+0

Neetesh先生におかげで、私は本当に有益です。 。 –

2

使用、次の行は、このJavaコードを使用して、任意の運を見つけた場合は私に知らせてください。また、役立つ場合は、このリンクをチェックし、 How to obtain MAC address of WiFi network interface?

+0

おかげでたくさんの先生が、これはあなたがOWを取得するために教えてくださいます、LAN上のマシンのIPアドレスを返します。私がMACアドレスを必要とするマシンのMACアドレスLAN上のマシンを一意に識別するために....私はあなたに優雅になります –

関連する問題