我有一个VB.net项目,我需要将一个字符转换为十六进制值。根据{{3}},我试过这个(例子):
Dim sChar as String = "€"
Dim sNum as Integer = AscW(sChar)
Dim sHex as String = hex(sNum).ToString
当我在此之后设置断点时,我在直接控制台中获取这些值:
?sNum
8364
?hex(sNum)
"20AC"
哪个是正确的,并按预期工作。
但是在运行程序中计算的值是垃圾:
?sHex
"20254"
为什么在运行代码和直接输入控制台时会得到不同的结果?
我如何获得预期的字符串值("20AC"
)?
答案 0 :(得分:0)
sHex = convert.ToString(sNum, 16)
我无法解释这些错误的值,但上面的代码对我有用,以防其他人遇到同样的问题。