我写一个聊天工具 ServerSocket 通讯的
现在做文件传输功能,请问java怎么自定义一个协议来通讯呢?自己写协需要哪些知识呢?(用于区分聊天和传文件)
还有一个问题就是,做文件传输的时候,
开始客户端发文件到服务器,然后等待服务器回复,
服务器把消息发给接受的用,然后等待接受者回复,
接受者回复后,程序就卡那了,(我把发送方等待回复的那句话注释,就能运行了,但是里面发送的内容就乱了)该怎么办???

解决方案 »

  1.   

    定义发送消息时候每条消息的前多少字节为控制字节,服务器解析控制字节然后把剩下的信息添加上控制头转发到目的客户那。或者控制信息不定义具体多少,但是结尾时候必须添加一个特殊字符,例如:
    /type:MESSAGE;/user:User1;/reciver:User2;/message:xiaoxi.......;如果遇到发送的信息内有与控制字符相同的(';')则转换下再发送。接收方将把转换的字符还原。
      

  2.   

    上次 头叫看下 xmpp ,你可以具体看看,