怎么方便地把不定长byte数组发送到客户端

   阅读
如何方便地把不定长byte数组发送到客户端?
我想实现个小工具,服务器端做好的dataset转成了data() as byte发送到客户端,用的是NETWORKSTREAM.WRITE,服务器端很好做,直接就写stream.Write(data, 0, data.Length)就可以了。但接收端怎么写比较方便?主要是长度不知道。我目前的想法是用while true,每段接收1024字节到临时byte(),然后redim data(size),再array.copy,不过redim好像效率很低吧?

------解决方案--------------------
你这样不行吧

连续发送两个dataset你如何把他们分开?

怎么也要自定义一个协议,哪怕就四个字节的整数代表长度+byte[]这么简单也行
然后客户端接收就知道长度了。

怕效率低可以直接定义一个较大的缓冲区,byte[50000*4096],每次接收修改offset就行了
------解决方案--------------------
那就在客户端定义一个足够长的全局byte数组,就不用次次生成新对象了。
阅读