獲取cpu信息及使用率

//獲取CPU信息正則表達式

private String getCpu() {

  ProcessBuilder cmd;

  String result = "";

  try {

  String[] args = { "/system/bin/cat", "/proc/cpuinfo" };

  cmd = new ProcessBuilder(args);

  Process process = cmd.start();

  InputStream in = process.getInputStream();

  byte[] re = new byte[1024];

  while (in.read(re) != -1) {

  System.out.println(new String(re));

  result = result + new String(re);

  return result.toString();

  }

  in.close();

  } catch (Exception ex) {

  ex.printStackTrace();

  }

  return result.toString();

  }app


//得到CPU 使用率,採用正則表達式分析字符串信息
  String Result;
  Process p=Runtime.getRuntime().exec("top -n 1");

  BufferedReader br=new BufferedReader(new InputStreamReader  
  (p.getInputStream ()));
  while((Result=br.readLine())!=null)
  {
  if(Result.trim().length()<1){
  continue;
  }else{
  String[] CPUusr = Result.split("%");
  tv.append("USER:"+CPUusr[0]+"\n");
  String[] CPUusage = CPUusr[0].split("User");
  String[] SYSusage = CPUusr[1].split("System");
  tv.append("CPU:"+CPUusage[1].trim()+" length:"+CPUusage[1].trim().length()+"\n");
  tv.append("SYS:"+SYSusage[1].trim()+" length:"+SYSusage[1].trim().length()+"\n");
  tv.append(Result+"\n");
  break;
  }
  }ui

相關文章
相關標籤/搜索