TELNET协议规范: ftp://ftp.isi.edu/in-notes/rfc854.txthttp://www.csdn.net/develop/read_article.asp?id=3040

解决方案 »

  1.   


    直接用建个Socket,建立IO流,就可以和对方的telnet通话了
      

  2.   

    也即是讲,telnet也是基于socket通信。
      

  3.   

    telnet和smtp、pop3等一样是基于socket通信的,所以你看看SMTP的代码
    就知道怎样实现Telnet了,下面是一段Smtp的代码!希望能对你有所启发!
    import java.net.*; 
     import java.io.*; 
     import java.net.*;  public class sendElvisMail { 
     public static void main(String s[]) { 
        // 
        //  Send fake mail from Elvis Presley 
        // 
        //  sendElvisMail [mail server] [recipient address] 
        //               mail server can be hostname or IP address 
        // 
        //   ex.  sendElvisMail mail.company.com [email protected] 
        // 
        sendElvisMail t = new sendElvisMail(); 
        t.sendMail(s[0], s[1]); 
        }  public void sendMail(String mailServer, String recipient) { 
        try {    
           Socket s = new Socket(mailServer, 25); 
           BufferedReader in = new BufferedReader 
               (new InputStreamReader(s.getInputStream(), "8859_1")); 
           BufferedWriter out = new BufferedWriter 
               (new OutputStreamWriter(s.getOutputStream(), "8859_1"));        send(in, out, "HELO theWorld"); 
           // warning : some mail server validate the sender address 
           //           in the MAIL FROm command, put your real address here 
           send(in, out, "MAIL FROM: <[email protected]>"); 
           send(in, out, "RCPT TO: " + recipient); 
           send(in, out, "DATA"); 
           send(out, "Subject: In the ghetto"); 
           send(out, "From: Elvis Presley <[email protected]>"); 
           send (out, "\n");       
           // message body 
           send(out, "I'm alive. Help me!"); 
           send(out, "\n.\n"); 
           send(in, out, "QUIT"); 
           s.close(); 
           } 
        catch (Exception e) { 
           e.printStackTrace(); 
           } 
        } 
         
      public void send(BufferedReader in, BufferedWriter out, String s) { 
        try { 
           out.write(s + "\n"); 
           out.flush(); 
           System.out.println(s); 
           s = in.readLine(); 
           System.out.println(s); 
           } 
        catch (Exception e) { 
           e.printStackTrace(); 
           } 
        }   public void send(BufferedWriter out, String s) { 
        try { 
           out.write(s + "\n"); 
           out.flush(); 
           System.out.println(s); 
           } 
        catch (Exception e) { 
           e.printStackTrace(); 
           } 
        } 
     }