Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取java中的windows运行进程描述 导入java.io.BufferedReader; 导入java.io.IOException; 导入java.io.InputStreamReader; 公共班机{ 公共静态void main(字符串[]args){ 试一试{ 弦线; 进程p=Runtime.getRuntime().exec (System.getenv(“windir”)+“\\system32\\”+“tasklist.exe”); BufferedReader输入=新的BufferedReader(新的InputStreamReader( p、 getInputStream()); 而((line=input.readLine())!=null){ System.out.println(line);//_Java_Cmd - Fatal编程技术网

获取java中的windows运行进程描述 导入java.io.BufferedReader; 导入java.io.IOException; 导入java.io.InputStreamReader; 公共班机{ 公共静态void main(字符串[]args){ 试一试{ 弦线; 进程p=Runtime.getRuntime().exec (System.getenv(“windir”)+“\\system32\\”+“tasklist.exe”); BufferedReader输入=新的BufferedReader(新的InputStreamReader( p、 getInputStream()); 而((line=input.readLine())!=null){ System.out.println(line);//

获取java中的windows运行进程描述 导入java.io.BufferedReader; 导入java.io.IOException; 导入java.io.InputStreamReader; 公共班机{ 公共静态void main(字符串[]args){ 试一试{ 弦线; 进程p=Runtime.getRuntime().exec (System.getenv(“windir”)+“\\system32\\”+“tasklist.exe”); BufferedReader输入=新的BufferedReader(新的InputStreamReader( p、 getInputStream()); 而((line=input.readLine())!=null){ System.out.println(line);//,java,cmd,Java,Cmd,tasklist.exe采用可选参数/v进行详细说明。这将输出说明 范例 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { try {

tasklist.exe
采用可选参数
/v
进行详细说明。这将输出说明

范例

       import java.io.BufferedReader;
       import java.io.IOException;
       import java.io.InputStreamReader;
       public class Main {
            public static void main(String[] args) {
            try {
                String line;

        Process p = Runtime.getRuntime().exec
                (System.getenv("windir") +"\\system32\\"+"tasklist.exe");
            BufferedReader input = new BufferedReader(new InputStreamReader(
            p.getInputStream()));
            while ((line = input.readLine()) != null) {
            System.out.println(line); // <-- Parse data here.
           }
           input.close();
           } catch (Exception err) {
            err.printStackTrace();
           }
    }

}
您需要更新对exec()的调用以传递“/v”。完整示例,包括解析

taskmgr.exe 5648 Console 1 18,280 K Running 0:00:00 Windows Task Manager
输出

public static void main(String[] args) throws IOException {
    String taskListExe = System.getenv("windir") + "\\system32\\" + "tasklist.exe";
    Process p = Runtime.getRuntime().exec(new String[] { taskListExe, "/v" });

    BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
    Pattern pattern = Pattern.compile("(.*?)\\s+(\\d+).*(\\d+:\\d+:\\d+)\\s+(.*?)");
    String line;
    while ((line = input.readLine()) != null) {
        Matcher matcher = pattern.matcher(line);
        if (matcher.matches()) {
            System.out.println(String.format("%s, pid = %s, description = %s", matcher.group(1), matcher.group(2),
                    matcher.group(4)));
        }
    }
    input.close();
}

tasklist.exe
采用可选参数
/v
表示详细信息。这将输出说明

范例

       import java.io.BufferedReader;
       import java.io.IOException;
       import java.io.InputStreamReader;
       public class Main {
            public static void main(String[] args) {
            try {
                String line;

        Process p = Runtime.getRuntime().exec
                (System.getenv("windir") +"\\system32\\"+"tasklist.exe");
            BufferedReader input = new BufferedReader(new InputStreamReader(
            p.getInputStream()));
            while ((line = input.readLine()) != null) {
            System.out.println(line); // <-- Parse data here.
           }
           input.close();
           } catch (Exception err) {
            err.printStackTrace();
           }
    }

}
您需要更新对exec()的调用以传递“/v”。完整示例,包括解析

taskmgr.exe 5648 Console 1 18,280 K Running 0:00:00 Windows Task Manager
输出

public static void main(String[] args) throws IOException {
    String taskListExe = System.getenv("windir") + "\\system32\\" + "tasklist.exe";
    Process p = Runtime.getRuntime().exec(new String[] { taskListExe, "/v" });

    BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
    Pattern pattern = Pattern.compile("(.*?)\\s+(\\d+).*(\\d+:\\d+:\\d+)\\s+(.*?)");
    String line;
    while ((line = input.readLine()) != null) {
        Matcher matcher = pattern.matcher(line);
        if (matcher.matches()) {
            System.out.println(String.format("%s, pid = %s, description = %s", matcher.group(1), matcher.group(2),
                    matcher.group(4)));
        }
    }
    input.close();
}

您的程序输出窗口标题,但我需要说明…请查看任务管理器有一个名为“说明”的列,其中显示了确切的文件名…@ShakibAhmed抱歉,我误解了标题和说明之间的区别。您的程序输出窗口标题,但我需要说明…请查看任务管理器呃,有一个名为description的专栏,里面显示了确切的文件名…@ShakibAhmed抱歉,我误解了标题和描述之间的区别。