现在程序中用socket发送文件 
发送方:
1、发送cmd命令:表示是文件还是文件夹
2、发送命令解释:表示文件大小
3、按照块制定块大小发送文件接收方:
1、监听到连接后,解释命令以及解释
2、根据文件大小接收文件
但现在出现的问题是:在同一个socket中发送多个文件时,如果发送块小于3760B,循环发送文件没有问题;如果发送的块大小大于3760B,在接收第二个文件的命令和命令解释时就不对了,为什么出现这种情况呢ps:缓冲区设置为10240B感谢啊,我都晕了 

解决方案 »

  1.   

    看一下吧,有很多介绍:http://www.bbs180.com/topictag-29.aspx
      

  2.   

    在同一个socket中发送多个文件时,如果发送块小于3760B,循环发送文件没有问题;如果发送的块大小大于3760B,在接收第二个文件的命令和命令解释时就不对了,为什么出现这种情况呢 
    ps:缓冲区设置为10240B 不知道你是如何发送和接收的。
    不过循环发送一般是没有问题,而循环接收则有可能会出现问题。
    建议采用应答机制来控制,我最近碰到了由于发送过快,导致接收方处理不过来而丢失数据的问题。