VB Winsock接收数据的问题
我定义了一个名为data()的数组(Byte型)使用GetData方法接收数据时,因为服务端发的不止1个包!所以data里的内容在DataArrival事件里被替换了,只...
我定义了一个名为data()的数组(Byte型)
使用GetData方法接收数据时,因为服务端发的不止1个包!
所以data里的内容在DataArrival事件里被替换了,只剩最后一个包的内容.
有什么办法让它不替换,全部存起来?
或者用GetData方法接收数据时,能指定从data(100)开始存入? 展开
使用GetData方法接收数据时,因为服务端发的不止1个包!
所以data里的内容在DataArrival事件里被替换了,只剩最后一个包的内容.
有什么办法让它不替换,全部存起来?
或者用GetData方法接收数据时,能指定从data(100)开始存入? 展开
3个回答
展开全部
指定一个计数器,用来指定当前是哪一组数据即可。
每接收到一个包,计数器就变更一下。
计数器可以用外部 公共变量来代替。
每接收到一个包,计数器就变更一下。
计数器可以用外部 公共变量来代替。
更多追问追答
追问
我是菜鸟,能告诉我具体怎么做吗?
追答
在公共部分定义 外部 公共变量:
public i as int =100
接收部分:
在DataArrival事件里被替换:
if i<0 then
i=100
else
i=i-1
data(i)=getdata()
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-11-05
展开全部
可以用字符串,每次接收的数据用竖线隔开(尽量用比较少用到的符号)
str1=str1 &"|" & winsock1.getdata
str1=str1 &"|" & winsock1.getdata
追问
试试
str应为String类型吧?
追答
是的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
学习
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询