【发布时间】:2015-11-07 06:21:19
【问题描述】:
我正在windows平台上开发一个java程序。我想访问 Wi-Fi 接口详细信息,例如 SSID、ip、子网、启用与否、连接与否等。目前我正在尝试使用 netsh、ipconfig 命令。例如这里是我如何获得连接的 SSID。这种方式好吗?有没有更好更简单的方法?提前致谢。
此代码是否适用于所有 Windows 版本而没有任何问题?
String ssid;
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c", "netsh wlan show interfaces");
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line.contains("SSID")){
ssid = line.split("\\s+")[3];
System.out.println(ssid);
return ssid;
}
}
【问题讨论】:
-
您的代码有效吗?如果是这样,你为什么要问这个问题?你一定有一些问题或疑问,否则你不会问。请在此处发布,以便人们可以回答。否则,您的问题太宽泛而无法回答。
-
是的,这段代码有效。我希望像图书馆一样编写来访问所有与 WiFi 相关的属性。我想知道的是这段代码是否可以在所有 Windows 版本中正常工作?
-
我投票结束这个问题,因为它可能更适合代码审查(寻求最佳方式)。
标签: java windows network-programming wifi netsh