在Java中启动已连接的telnet cmd窗口
我目前正在尝试创建一个应用程序,该应用程序将在启动时连接到telnet服务器。目前,我正在尝试类似以下代码:在Java中启动已连接的telnet cmd窗口,java,cmd,telnet,Java,Cmd,Telnet,我目前正在尝试创建一个应用程序,该应用程序将在启动时连接到telnet服务器。目前,我正在尝试类似以下代码: String ss = null; Process p = Runtime.getRuntime().exec("cmd /c telnet localhost 4445"); BufferedWriter writeer = new BufferedWriter(new OutputStreamWriter(p.getOutputStream())); writeer.write("t
String ss = null;
Process p = Runtime.getRuntime().exec("cmd /c telnet localhost 4445");
BufferedWriter writeer = new BufferedWriter(new OutputStreamWriter(p.getOutputStream()));
writeer.write("telnet localhost 4445");
writeer.flush();
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()));
System.out.println("Here is the standard output of the command:\n");
while ((ss = stdInput.readLine()) != null) {
System.out.println(ss);
}
但是,这不会打开终端,尽管我假设它运行所需的命令。我想打开一个终端,执行一个命令,显示在第二行,然后让终端打开供用户使用
有办法做到这一点吗?我已经尝试了一段时间,但我找不到真正能提供所需输出的解决方案。您好,使用start
Runtime.getRuntime().exec("cmd /c start cmd.exe /K \"ping localhost && telnet localhost 4445\"");
将打开一个新窗口。但您将无法访问该进程,因为它是由exec启动的不同进程。您仍然可以执行多个命令 你刚试过普通插座吗@PaulBastide常规套接字是个好主意,除非服务器实际上是telnet服务器。Telnet是一种协议,它支持使用0xff字节值作为转义字符的许多通信选项。