一点头绪都没有么?参考下交换机的文档看有没有说明。你用什么方式或者说命令连接的交换机?这些东西就像TCP/UDP的包头信息一样,不知道结构是不行的。我做过TCP的header,大致意思就是把这些byte转换成0/1序列,根据所在位置重新组合出有意义的值。但愿有点启发。

解决方案 »

  1.   

    回楼上兄弟:用的telnet(23端口),好像是明文传送的,搞了半天,还是没有解码出来`~~
      

  2.   

    我顶,各位高手,这个问题怎么解决,解决就给分
    代码如下:
    import java.io.*;
    import java.net.*;
    import java.util.*;public class Temp
    {
    public static void main(String args[])
    {
    char buffer[] = new char[1024];
    Socket socket = null;
        InputStreamReader cin;
        OutputStreamWriter cout;
        String str = null;
        int n = 0;
        int i = 0;
    try{
    String s = "172.16.142.1";
    socket = new Socket(s,23);
    cin = new InputStreamReader(socket.getInputStream(),"gb2312");
    cout = new OutputStreamWriter(socket.getOutputStream());
    n = cin.read(buffer);
      str = new String(buffer);
      System.out.println("str="+str);
      System.out.println("n="+n);
                               /*输入密码*/
      cout.write("panlong2249");
      cout.write("\r\n");
      cout.flush();
      System.out.print("panlong2249");
      n = cin.read(buffer);
      str = new String(buffer);
      System.out.println("str="+str);
      System.out.println("n="+n);
    socket.close();
    }
    catch(Exception e)
    {
    System.out.println("faile:"+e.toString());
    }

    }
    我确认密码的确没有写错误,但是老是提示密码错误,这是什么原因~~~请指教,谢谢~~~