java telnet

来源:互联网 发布:全国环境监测实时数据 编辑:程序博客网 时间:2024/04/29 18:26
需要敲入太多的telnet命令,繁琐,对。是时候解放自己了。
1. 下载java telnet包,请Google搜索 jtelnet-withall.jar的包,其中包含了源代码和jar包
2. 新建java工程,讲下载的包解压缩得到jtelnet.jar,把jtelnet.jar添加到java工程的build path。
3. 把我下面的代码拷贝到src下面的新建的某个packate下面。
import java.net.*;import java.io.*;import thor.net.*;class SimpleTelnetTerminalHandler extends DefaultTelnetTerminalHandler//辅助类implements TelnetConstants {public void LineFeed() {System.out.print('\n');System.out.flush();}public void CarriageReturn() {System.out.print('\r');System.out.flush();}public void BackSpace() {System.out.print((char) BS);System.out.flush();}public void HorizontalTab() {System.out.print((char) HT);System.out.flush();}}public class telnet {static volatile boolean closed = false;public static void main(String[] args) {telnetCloseAuth("192.168.4.5", 5002);//你自己的telnet主机ip和端口(23比较常见)}private static void telnetCloseAuth(String inHost, int inPort) {try {String host = inHost;int port = inPort;URL url = new URL("telnet", host, port, "",new thor.net.URLStreamHandler());URLConnection urlConnection = url.openConnection();urlConnection.connect();if (urlConnection instanceof TelnetURLConnection) {((TelnetURLConnection) urlConnection).setTelnetTerminalHandler(new SimpleTelnetTerminalHandler());}OutputStream out = urlConnection.getOutputStream();final InputStream in = urlConnection.getInputStream();(new Thread(new Runnable() {public void run() {try {int ch;do {ch = in.read();if (ch < 0)return;System.out.print((char) ch);System.out.flush();} while (true);} catch (Exception e) {if (!closed)e.printStackTrace();}}})).start();int key;/*while (true) {key = System.in.read();if (key == (']' - 64))break;out.write(key);}*/// 我这里是要执行固定的几个命令,你也可以放开上面的那一段注释,实时的与telnet服务器通信String[] commands = new String[]{"admin\r\n", "admin\r\n", "vlr\r\n", "CloseAuth 0\r\n"};for (String cmd:commands){Thread.sleep(1000);//System.out.println(cmd);out.write(cmd.getBytes());}Thread.sleep(1000);((TelnetURLConnection) urlConnection).disconnect();} catch (Exception e) {e.printStackTrace();}}}



原创粉丝点击