java中如何执行命令行语句

Python033

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运行命令行并获取返回值,下面以简单的Java执行ping命令(ping 127.0.0.1 -t

)为例,代码如下:

Process p = Runtime.getRuntime().exec("ping 127.0.0.1 -t")

Process p = Runtime.getRuntime().exec("javac")

InputStream is = p.getInputStream()

BufferedReader reader = new BufferedReader(new InputStreamReader(is))

String line

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

   System.out.println(line)

  }

p.waitFor()

is.close()

reader.close()

p.destroy()

}

cd

路径,进入一个文件

例:cd c:\\window\user如果是一个.java类型的文件,要先编译它才能够运行,编译.java文件需要安装jdk。

javac

文件名.java,编译一个.java文件

例:javac hello.javajava

文件名,运行一个编译好的java文件。.java文件在编译完成之后后生成一个.class文件,在执行java命令的时候只需要输入文件名,不需要输入.class这个后缀名。

例:java hello

假设编译了一个hello.java文件,会在当前路径下生成一个hello.class文件,执行上面的命令就可以运行了