java中如何执行命令行语句

Python08

java中如何执行命令行语句,第1张

可以使用java.lang.Process和java.lang.Runtime实现,下面展示两个例子,其它用法请查阅资料:

1、执行ping命令

import java.io.BufferedReader

import java.io.IOException

import java.io.InputStreamReader

public class ProcessTest {

    public static void main(String[] args) {

        BufferedReader br = null

        try {

            String cmd = "ping 127.0.0.1"

            // 执行dos命令并获取输出结果

            Process proc = Runtime.getRuntime().exec(cmd)

            br = new BufferedReader(new InputStreamReader(proc.getInputStream(), "GBK"))

            String line

            while ((line = br.readLine()) != null) {

                System.out.println(line)

            }

            proc.waitFor()

        } catch (IOException e) {

            e.printStackTrace()

        } catch (InterruptedException e) {

            e.printStackTrace()

        } finally {

            if (br != null) {

                try {

                    br.close()

                } catch (IOException e) {

                    e.printStackTrace()

                }

            }

        }

    }

}

2、打开浏览器并跳转到百度首页:

import java.io.IOException

public class ProcessTest {

    public static void main(String[] args) {

        try {

            String exeFullPathName = "C:/Program Files/Internet Explorer/IEXPLORE.EXE"

            String message = "www.baidu.com"

            String[] cmd = {exeFullPathName, message}

            Process proc = Runtime.getRuntime().exec(cmd)

        } catch (IOException e) {

            e.printStackTrace()

        }

    }

}

java -cp .A.jar B\x0d\x0a\x0d\x0aA 是你的jar包,跟B放在一个文件夹就行。如果不在一个地方,就要指定了,如:\x0d\x0a java -cp .d:\A.jar B\x0d\x0aB 就是你要执行的类 \x0d\x0a==================\x0d\x0a原理:\x0d\x0ajava 是执行编译后的class的,这个不用多说,都知道...\x0d\x0a-cp 就是引入外部 zip包或者jar包。\x0d\x0a 正确来说就相当于你在环境变量配置的classpath后的参数。\x0d\x0a 即:指定运行时需要的class。\x0d\x0a 其中 . 是在当前目录找 以后后面的,是到你指定的目录找 \x0d\x0a==================\x0d\x0a你看我给的例子了吗?我可没那么说。\x0d\x0a第一行可是这么写的:java -cp .A.jar B (A、B的解释在上面) \x0d\x0a.也别给漏了