Есть класс который записывает список процессов в Stringbuilder, можно ли как-то не записывать часть процессов, которые я укажу, каким либо образом. Например мне не нужны стандартные процессы windows, как их игнорировать?
public static class List {
public static StringBuilder list() {
// TODO Auto-generated method stub
StringBuilder b = new StringBuilder();
try {
Process p = Runtime.getRuntime().exec(
System.getenv("windir") + "\\system32\\" + "tasklist.exe /FO CSV");
try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
CSVFormat.EXCEL
.parse(input)
.getRecords()
.stream()
.map(r -> r.get(0)).forEach(item -> b.append(item + "\n"));
}
} catch (IOException e) {
e.printStackTrace();
}
return b;
}
Mikhail Vaysman
14.4k1 золотой знак24 серебряных знака32 бронзовых знака
задан 1 июл. 2017 в 21:05
Drop
3212 золотых знака9 серебряных знаков21 бронзовый знак
-
кстати зачем у вас статический класс со статическим методом?Mikhail Vaysman– Mikhail Vaysman2017年07月01日 21:12:04 +00:00Commented 1 июл. 2017 в 21:12
-
не помню по какой причине, но иначе класс не работает либо не возвращает ничегоDrop– Drop2017年07月01日 21:14:14 +00:00Commented 1 июл. 2017 в 21:14
-
предположу, что это вложенный класс. а почему метод просто не вынести во внешний класс?Mikhail Vaysman– Mikhail Vaysman2017年07月01日 21:16:17 +00:00Commented 1 июл. 2017 в 21:16
-
да, класс вложенный. когда метод был во внешнем классе, я не смог получать данные которые возвращает метод. почему так не знаю, но когда сделал в текущем виде все заработалоDrop– Drop2017年07月01日 21:20:12 +00:00Commented 1 июл. 2017 в 21:20
1 ответ 1
private static Set<String> exclude = new HashSet<String>(Arrays.asList("systemProcess1", "systemProcess2"));
.map(r -> r.get(0))
.filter(item -> !exclude.contains(item))
.forEach(item -> b.append(item + "\n"));
ответ дан 1 июл. 2017 в 21:10
rjhdby
14k4 золотых знака37 серебряных знаков54 бронзовых знака
-
не совсем понимаю, где тут можно добавить процессы, которые будут игнорироваться? если речь пойдет не о стандартных процессах?Drop– Drop2017年07月01日 21:35:15 +00:00Commented 1 июл. 2017 в 21:35
-
Имена игнорируемых процессов известны? Занесите их в
Setи фильтруйте по нему, в чем проблема то?rjhdby– rjhdby2017年07月01日 21:36:24 +00:00Commented 1 июл. 2017 в 21:36 -
имена известны, все дошло) спасибоDrop– Drop2017年07月01日 21:37:43 +00:00Commented 1 июл. 2017 в 21:37
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопросlang-java