如果 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 编辑 ]