- /**
- * 获取CPU序列号
- *
- * @return CPU序列号(16位)
- * 读取失败为"0000000000000000"
- */
- public static String getCPUSerial() {
- String str = "", strCPU = "", cpuAddress = "0000000000000000";
- try {
- //读取CPU信息
- Process pp = Runtime.getRuntime().exec("cat /proc/cpuinfo");
- InputStreamReader ir = new InputStreamReader(pp.getInputStream());
- LineNumberReader input = new LineNumberReader(ir);
- //查找CPU序列号
- for (int i = 1; i < 100; i++) {
- str = input.readLine();
- if (str != null) {
- //查找到序列号所在行
- if (str.indexOf("Serial") > -1) {
- //提取序列号
- strCPU = str.substring(str.indexOf(":") + 1,
- str.length());
- //去空格
- cpuAddress = strCPU.trim();
- break;
- }
- }else{
- //文件结尾
- break;
- }
- }
- } catch (IOException ex) {
- //赋予默认值
- ex.printStackTrace();
- }
- return cpuAddress;
- }
转载于:https://my.oschina.net/limbusnet/blog/75457