import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.StringTokenizer;

public class MemoryMonitor {
 public static List listRunningProcesses(String processName) {
  List processes = new ArrayList();
  try {
   String line;
   StringTokenizer temp;
   Process p = Runtime.getRuntime().exec("tasklist.exe /FI \"IMAGENAME eq \""+processName+" /FO CSV /NH");
   BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
   while ((line = input.readLine()) != null) {
    if (!line.trim().equals("")) {
     // keep only the proecess name
     line = line.replace("\",\"", "^").replace("\"", "").replace(",", "");
     temp = new StringTokenizer(line, "^");
     while (temp.hasMoreTokens()) {
      processes.add(temp.nextToken());
     }
    }
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
  return processes;
 }

 public static void main(String[] args) {
  List processes = listRunningProcesses("svchost.exe");
  String result = "";
  // display the result
  Iterator it = processes.iterator();

  int i = 0;
  while (it.hasNext()) {
   result += it.next() + "\n";
   i++;
   if (i % 5 == 0)
    result += "\n";
  }
  System.out.println(result);
 }

 public void start() {
  // TODO Auto-generated method stub
  
 }
}

'JAVA' 카테고리의 다른 글

IP찾기  (0) 2013.02.26
Java - 자주사용하는 Collection객체들의 특징  (0) 2013.02.08
[JAVA] String의 날짜를 date로 변환  (0) 2013.01.25
[JAVA] 파일 읽고, 쓰기  (0) 2013.01.24
[JAVA] log4j  (0) 2009.11.12

+ Recent posts