如何在linux中用java得到网卡物理地址?
网上有一种方法是调用系统命令,应该调用哪一条命令呢?
哪位大哥有例子啊?
谢谢先~~~~
网上有一种方法是调用系统命令,应该调用哪一条命令呢?
哪位大哥有例子啊?
谢谢先~~~~
解决方案 »
- 空前绝后的Java Swing实现的QQ聊天程序,支持文字图片文件表情发送
- 下载exceL被IE阻止了。怎么解决啊?
- ORACLE数据库中有一字段类型为LONG,INSERT语句插入不了,PreparedStatement可以吗?可该用哪个取值函数?
- [技术甄别]用JAVA编写一实用程序——汉字区位码转换
- 关于swing 中 tree的问题
- 哪位大虾能告诉我unicode中中文段的值?
- java中 unicode编码问题
- 可变参数重载问题
- 求一个基于javamail的邮件客户端
- 如何控制字符串的接收内容,求指导
- 请问super(title)是啥意思?
- Java同时处理UTF-8与GBK文件的问题
不过还有其他方法吗?
网上都是windows的
你看看是否可以参考:
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;public class ProcessBuilderDemo {
public static void main(String[] args) {
//Physical Address. . . . . . . . . :
InputStream input = null;
try{
//执行命令
ProcessBuilder builder = new ProcessBuilder("ipconfig" ,"/all");
Process process = builder.start();
input = process.getInputStream();
//把得到的流得到
byte[] b = new byte[1024];
StringBuffer buffer = new StringBuffer();
while (input.read(b) > 0) {
buffer.append(new String(b));
}
//分析流
String value = buffer.substring(0);
String systemFlag = "Physical Address. . . . . . . . . :";
int index = value.indexOf(systemFlag);
List<String> address = new ArrayList<String>();
if (0 < index) {
value = buffer.substring(index + systemFlag.length());
address.add(value.substring(0, 18));
} //打印输出
for (String add : address) {
System.out.println(add);
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
try {
input.close();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
我改改到linux下试试看,呵呵
不过可以运行~~搞不懂~~