对方发来了数据,我要把数据按字节都转换为16进制,可是发现对方发来从0到128都能正确的转换可是发送超过128的数据时,我接收到的就都是0,怎么回事,下面是代码如对方发送 server.senddate 130  '130是一个数字,我的接收转换 
  dim S as string
  client.GetDate s
  print asc(s)    '当对方发送的数字<=128时接收转换都正常,可是>128时就出问题了,转出的都是0,怎么回事,
谢谢各位大虾

解决方案 »

  1.   

    据我所知是因为129超出了ascii的范围,可是这样的数据我如何把它们再变成数字呢
      

  2.   

    要这样
    dim b() as byte
    client.GetDate b
    这时候收到的是个数组~用数组的办法来处理,别转成字符串,不然有麻烦vb的字符串类型当ascii值在128 到 254 的时候,无法正确返回这个字符的ascii值,
    比如 debug.print asc(chr(192)) 返回的结果也会变成0
    所以只能用数组的办法来处理
      

  3.   

    dim b() as byte
    client.GetDate b
    这样是对的,再对b做处理很容易了。