如何让JAVA程序执行2条命令行  第一条执行完毕成功在命令行提示才执行下一步???

解决方案 »

  1.   

    Process p = Runtime.getRuntime().exec(cmd1);
    p.getInputStream()得到第一条的执行结果
    成功再执行
    p = runtime.exec(cmd2);
      

  2.   

    package com;import java.io.BufferedReader;
    import java.io.File;
    import java.io.IOException;
    import java.io.InputStreamReader;public class Test { /**
     * @param args
     */
    public static void main(String[] args) {
    System.out.println("请选择你要的内容...");
    System.out.println("1.冰激凌");
    System.out.println("2.果冻");

    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    try {
    String content = br.readLine();
    if("1".equals(content))
    {
    System.out.println("冰激凌..");
    }
    else
    {
    System.out.println("果冻..");
    }

    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } }}
      

  3.   

    .printStackTrace();打印出异常信息
      

  4.   


    import java.io.BufferedReader ;
    import java.io.InputStream ;
    import java.io.InputStreamReader ;public class Test { public static void main(String[] args) throws Exception {
    Runtime rt = Runtime.getRuntime() ;
    String cmd1 = "cmd /c hello.." ;
    Process proc = rt.exec(cmd1) ;
    InputStream is = proc.getErrorStream() ;// 获取错误信息
    boolean flag = true ;
    byte[] b = new byte[1024] ;
    while (is.read(b) > 0) {
    if (true) {
    System.out.println("执行出错") ;
    flag = !flag ;
    }
    System.out.println(new String(b)) ;
    }
    if (flag)
    System.out.print("执行成功") ;
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in)) ;
    System.out.println("输入y继续...") ;
    while (true) {
    if ("y".equalsIgnoreCase(br.readLine()))
    break ;
    }
    String cmd2 = "cmd /c cd.." ;
    Process proc2 = rt.exec(cmd1) ;
    }}