以前有一段程序,通过java代码执行windows 的cmd程序,并且获得cmd程序的返回值,一直正常,后来重装了一个64位的系统之后就不能正常运行了,无法返回程序执行结果。
代码如下:
import java.io.BufferedReader;
import java.io.InputStreamReader;public class CmdUtil {    /**
     * 执行CMD命令,并返回String字符串,在戴尔笔记本64位上无法返回结果值
     */
    public static String executeCmd(String strCmd) throws Exception {
        Process p = Runtime.getRuntime().exec("cmd /c " + strCmd);
        StringBuilder sbCmd = new StringBuilder();
        BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
        String line;
        while ((line = br.readLine()) != null) {
            sbCmd.append(line + "\n");
        }
        System.out.println(sbCmd);
        return sbCmd.toString();
    }
        public static void main(String[] args) throws Exception {
     String result = CmdUtil.executeCmd("ping www.baidu.com");
     System.out.println("返回结果:" + result);
    }
}用eclipse执行的结果如下(无法获取返回值)
我在另外一台电脑上使用的是同样的64位系统,这段程序又是正常的,请问各位这是怎么回事儿啊(配置问题,或者其他什么问题)?通过windows 系统cmd命令直接ping的结果