救急~~~~~救急~~~~~关于UNICODE的问题~~~~~~

Pzher 2001-11-27 04:29:55
我写的程序需要通过MSCOMM控件将一些8进制数据发送到16位单片机上,以前在VB3是没有问题~~~~~
但现在在VB6就不行了~~~我估计是UNICODE有关~~~

具体如下:我从数据库中读出数据(是一些8进制的数据),在程序中存为STRING,放入该控件的OUTPUT中,但在单片机中却接受到错误数据。我又试只传一个字符(A),在单片机中却显示数字,由于UNICODE用2个字节来表示一个字符,因此我想知道,如何解决这个问题,让串出的字符是正确的字符呢~~~
...全文
75 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
subzero 2001-11-28
  • 打赏
  • 举报
回复
dim a as string,b() as byte
a="the string will be send"
b=strconv(a,vbfromunicode)

the send the array b
Pzher 2001-11-28
  • 打赏
  • 举报
回复
先谢谢各位~~

TO Mittermeyer(疾风之狼)
我也想到用BYTE数组,但是结果还是一样~~~~
redkit 2001-11-27
  • 打赏
  • 举报
回复
strconv(a,vbfromunicode)
Mittermeyer 2001-11-27
  • 打赏
  • 举报
回复
vb的String不是Unicode,而是宽字符串,一个字符用两个字节表示。Unicode是编码方式,这是存储方式,不一样。更何况vb不支持unicode,不能调用所有和unicode相关的api。
你应该把取出来的数据放到一个byte数组中,然后发送,应该不会有问题了。
basey 2001-11-27
  • 打赏
  • 举报
回复
Dim a As String
a="A"
a = StrConv(a, vbUnicode)
......
a= StrConv(a, vbFromUnicode)

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧