注册 登录
编程论坛 VB6论坛

VB 显示汉字

icefox225 发布于 2014-06-09 12:53, 784 次点击
下位机发上来的数据为C5 B7 C4 B7 C1 FA,对应的中文为欧姆龙,怎么显示到VB的text文本框中啊,
我用了
For i = 0 To 6
Text2.Text = Text2.Text & Chr(m_ReadData(i))
Next i
这个显示出来的是乱码。
不知道怎么实现,有没大神指教下啊!!
3 回复
#2
bczgvip2014-06-09 14:37
Text2.Text = m_ReadData
#3
lowxiong2014-06-09 17:13
如果 m_ReadData 是byte数组的话,应该是text2=strconv( m_ReadData,vbunicode),不能直接text2= m_ReadData,因为从你传递过来的码看是16位asc码,而text2显示汉字是用汉字内码显示的,如果你反过来看m_ReadData =text2的话,你会发现这几个汉字在内存的的码实际为:39,107,198,89,153,159,这是这几个汉字内码的十进制数据。如果你非要用循环完成显示的话,则代码如下:
  Text2 = ""
  For i = 0 To Ubound(m_ReadData) Step 2
    Text2 = Text2 & Chr(CLng(m_ReadData(i)) * 256 + m_ReadData(i + 1))
  Next


[ 本帖最后由 lowxiong 于 2014-6-9 17:20 编辑 ]
#4
hjxlj2014-07-01 17:07
qq:775420425
1