cmd命令没有在java程序中运行

时间:2014-07-16 17:24:21

标签: java windows cmd

我正在尝试运行cmd命令。一切正常但没有输出。我不明白为什么。 更新代码

import java.io.*;
import java.util.*;

class CmdTest {
    public static void main(String[] args) throws Exception {
        String command=   "ffmpeg -i D:\\test%d.jpg -vcodec mpeg4 outfile.avi";
        Process process;
        System.out.println("first stmt");
        try
        {
             process = Runtime.getRuntime().exec(command);
             Scanner kb = new Scanner(process.getInputStream());
             System.out.println("try block");
        } catch (IOException e)
        {
            e.printStackTrace();
        }
        System.out.println("last stmt");
    }
}

我期待执行上面提到的cmd命令。编译和执行过程中没有任何问题。但是,命令不执行写入。

1 个答案:

答案 0 :(得分:0)

首先,您的代码应该给出错误,因为行Scanner kb = new Scanner(process.getInputStream());将看不到进程。 processtry-catch内定义。

其次,你在ffmpeg -i D:\\test%d.jpg -vcodec mpeg4 outfile.avi上试过了command window吗?如果没有,试试吧。

第三,不要运行该命令,而是尝试运行一些简单的命令,如dirpwd等。

第四,在代码中加入一些System.out.println("say something"),然后你就可以看到它失败/停止的位置。