用winsock 传输 字符串  问题N多在传输比较长的字符串时 通常会分几个包 来传输 会把字符串截断请教 会不会把一个字符截成2部分?经常出现莫名其妙的错误TCP协议 传输字符串 一次传输多少合适??传输字符串应该注意些什么问题?

解决方案 »

  1.   

    winsock最大支持8k一次性传输
    我通常采用2-3k传输——自己写程序来分步传输
    仅供参考
      

  2.   

    winsock最大支持8k一次性传输
    我通常采用2-3k传输——自己写程序来分步传输
    仅供参考
    如果带宽低 2-3K也会分包的
    所以我做程序调试的时候 把传输设成9K 肯定会分包 接受端设置字符串缓存,接受到一个或一个以上完整的数据包后 才作处理~~ 这样都出现莫名其妙的错误~ 经常丢数据包的结束分割字符~~
      

  3.   

    经过测试 会经常出现 分割字符 比如 "衡水" BAE2 CBAE当把"衡"分成 两半的时候就是  0x0000 0xE2CB 0xAE**