比如说通过才cmd输入telnet localhost后再输入用户名和密码,如何操作?java直接操作telnet localhost好操作,如:Process ee = Runtime.getRuntime().exec("cmd.exe telnet localhost 8127"); 但是怎么操作向这个中继续输入命令呢,并且得到输入命令后的结果,最好以字符串返回并能在控制台打印。求代码

解决方案 »

  1.   

    回四楼:   就是相当于我们打开cmd命令窗口后属于telnet localhost回车进入后要求输入用户名和密码,我们继续输入后有相关内容在cmd窗口中显示,我现在希望能把这些运行cmd命令的过程用程序实现,并得到最后的内容打印出来,谢谢
      

  2.   

    啊,你只是要java实现的代码呗!而不是要cmd的命令,那好办!
      

  3.   


    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    public class RuntimeComplie {
        public static void main(String[] args) throws IOException, InterruptedException {
            Process p = Runtime.getRuntime().exec("cmd /c javac TestB.java & java TestB");
            InputStream is = p.getInputStream();
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            String line = null;
            while((line=br.readLine()) !=null) {
                System.out.println(line);
            }
            br.close();
        }
    }package com.sxzl.test;public class TestRuntime {        public static void main(String args[]) { 
            try {         //String myArgs[] ={"http://www.csdn.com/"};
            Process process = Runtime.getRuntime().exec( 
            "cmd.exe /c start http://www.csdn.com/"
            //"C:\\Program Files\\Internet Explorer\\iexplore.exe"    
            +" http://www.csdn.com/"
            ); 
                    } catch (Exception e) { 
            e.printStackTrace(); 
            } 
            } 
            
    }
    参照这两个
    自己改改
      

  4.   

    多谢楼上同志的辛苦,如果只实现telnet localhost这句好办,同楼上一样,但是主要在进入这个界面后再输入命令再得到返回的值,貌似不知道怎么实现,主要是下一个命令在上一个执行之后的输入命令,还望指教,呵呵
      

  5.   

    Process不是可以打开3个流,上面只用到一个getInputStream,还有getOutputStream用来写入
      

  6.   

       我这样怎么不行的哦:   Process ee = Runtime.getRuntime().exec("cmd /c telnet localhost 8127");
    BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(ee.getOutputStream()));
    bw.write("scan temp\test1.txt");
    BufferedReader is = new BufferedReader(new InputStreamReader(ee.getInputStream()));
    String tmp = null;
    while((tep=is.readLine())!=null){
    System.out.println(tmp);
    }