Code Bye

关于Socket判断消息类型的问题

例如本人现在写一个通信程序,要可以发送文字消息,也能发送文件流。
要支持一边发送文件一边还能发送消息
那么这样,是不是在buffer[0] 设置一个数字来 设定一下消息类型,例如1是文字消息,2是文件流,3是取消文件发送
然后接收消息方根据这里来进行不同操作
又或是其他的办法呢,求推荐文章,求告知。
解决方案

10

对于socket来说,它的职能单一,就是互发数据。在保证数据发送、接收的基础上,用数据做什么都是业务层的事。所以一般用socket,都需要自定义包头,包括数据包长度,包类型等等。
http://blog.csdn.net/sqldebug_fan/article/details/20465455

5

底层其实只能发送1010的二进制
socket使用中能够直接发字符串,是原因是编译器已经封装好了方法,可以将字符串转二进制字节再发送
字节到了网卡,最终会被处理成高电平,低电平

5

服务器可以开两个socket 一个接受传送文件
一个接受发送文本信息
开两个端口

5

这些使用wcf好一些,不用操心这么多事情了。
这些写这些东西要好长时间的,尤其是稳定性,要测试好久的。
最好是使用稳定的模型做。

5

引用:

这些使用wcf好一些,不用操心这么多事情了。
这些写这些东西要好长时间的,尤其是稳定性,要测试好久的。
最好是使用稳定的模型做。

+1
稳定性确实最重要,假如对于性能没有特别苛刻的要求,推荐是wcf

5

socket发包,肯定要自定义包的格式的。
你就搞出那么一位,放类型就好啦。

5

定义一结构体,假如相关标识为1,表示文本消息有效,假如相关标识有为2 ,则流字节码有效。至于另一端,就看你怎么样解析了。

5

最近在研究socket  支持..

5

自定义数据报文头,加上你自定义的报文类型,解析判断就可以了!

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于Socket判断消息类型的问题