1苫耸、獲取本機(jī)中的任務(wù)管理器列表
public static List getAllTask(){
List<String> processList = new ArrayList<String>();
try {
Process tasklist = Runtime.getRuntime().exec("tasklist");
//這是第一種
// BufferedReader input = new BufferedReader(new InputStreamReader(tasklist.getInputStream()));
// String line = "";
// while ((line = input.readLine()) != null) {
// processList.add(line);
// }
// input.close();
//這是第二種
Scanner in=new Scanner(tasklist.getInputStream());
while(in.hasNextLine()){
String p=in.nextLine();
processList.add(p);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
return processList;
}
列出的結(jié)果如下圖所示:1.jpg
我們可以在對其進(jìn)行一些篩選,舉出其中的.exe和.EXE后綴的儡陨。
2褪子、篩選數(shù)據(jù)
public static List filterTaskName(List<String> taskNames){
List filterTaskNames=new ArrayList();
for(int i=0;i<taskNames.size();i++){
if(taskNames.get(i).indexOf(".EXE")!=-1){
filterTaskNames.add(taskNames.get(i).substring(0,taskNames.get(i).indexOf(".EXE")));
}
else if(taskNames.get(i).indexOf(".exe")!=-1){
filterTaskNames.add(taskNames.get(i).substring(0,taskNames.get(i).indexOf(".exe")));
}
}
return filterTaskNames;
}
篩選后的數(shù)據(jù)顯示為:
2.jpg
停止指定任務(wù)
Runtime.getRuntime().exec("taskkill /f /im " + taskName);
執(zhí)行上面的代碼就行。
結(jié)尾
其實(shí)最核心的地方就是“Runtime.getRuntime().exec”運(yùn)行cmd的語句骗村。啰嗦了一大堆嫌褪。下一次再見。