B5620140240016000000E8030000B16432009125013F528F000081FEFFFFDE8901008423FC2697203FDA02DD244750524D432C3033323434332E3030请给出代码,感谢万分!

解决方案 »

  1.   

    用Mid(str,Index,lenght) 即得两位十六进制. Index每次+2,Lenght =2
    用CInt() or valy() or Clng() 等 将上面取的字符前加上 "&H"即可转换成10进制的asc码,Cint("&h" & str)
    再用 chr()可以将Ascii转换成对应的字符.
      

  2.   

    据二当家的方法得到上面的哪些字符的ascii内容如下:
    b@$        d2  %?R         # &  ?  $GPRMC,032443.00,A,39
    后面的对了,前面的为什么还是不对。
      

  3.   

    据二当家的方法得到上面的哪些字符的ascii内容如下:
    b@$        d2  %?R         # &  ?  $GPRMC,032443.00,A,39
    后面的对了,前面的为什么还是不对。
    ---------------------------------------
    你原数据有00存在,ASCII00本来就显示不出来,说明数据本来就有问题的...你的这些数据从哪里来的啊
      

  4.   

    是gps数据,有nema格式的,标准的,可以直接转成字符
              也有ubx格式的,是二进制的,直接转过来时乱码啊
      

  5.   

    晕死
    如果是二进制,你恐怕要转成byte数组啊,要不00怎么能够显示?
      

  6.   

    数据需要有一定的格式这样才好转啊。至于十六进制转换到不是什么问题了。
    十六进制:&HEF
    字符:Chr(Hex(&HEF))
      

  7.   

    gps数据的数据通信协议如何?需依据数据通信协议来决定如何处理收到的数据。
    串口收到的任何数据实际都是由0或1二进制流组成的。
      

  8.   

    楼上的领导们,你用的什么是什么牌子的GPS系统啊,,
    [email protected]
      

  9.   

    我觉得一楼说的不错,用Mid(str,Index,lenght)   即得两位十六进制.   Index每次+2,Lenght   =2 
    index做个循环不就行了?