字符串中的VB6十六进制 - 文字值很难

时间:2011-12-20 21:07:29

标签: vb6 hex

我正在尝试存储十六进制FFFF的文字ascii值,十进制为65535,在VB6中写出时为ÿ。我想将此值存储在一个缓冲区中,该缓冲区由以下内容定义:

Type HBuff
   txt As String * 16
End Type

Global WriteBuffer As HBuff

在我继承的遗留代码中。

我想做WriteBuffer.txt = Asc(hex$(-1))之类的事情,但VB6将其存储为70 我需要在字符串中存储此值ÿ,即使它不可打印。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我不确定你的问题是什么。

如果要将字符编号255存储在字符串中,请执行以下操作:

WriteBuffer.txt = Chr$(255)

请注意,结果取决于当前的区域设置 ChrW$(255)没有,但它可能不会产生你想要的角色。

作为参考,您使用的代码返回数字-1的文本十六进制表示的第一个字符的ASCII代码。当Hex(-1)输入为FFFF(默认为默认值)时,-1Integer,因此您获得字母F的ASCII码,即{ {1}}。