将十六进制数字转换为文本的方法是什么。例如,文本中的 54 68 6f 6d 61 73 可能是 Thomas。我认为我错误地用二进制和它们如何工作来理解十六进制小数。
问问题
120 次
2 回答
0
从powershell我发现它是这样的。提示,我使用了 [Char]acter 和 Convert .NET 类。
$1=[Char][Convert]::ToUInt32('54',16)
$2=[Char][Convert]::ToUInt32('68',16)
$3=[Char][Convert]::ToUInt32('6f',16)
$4=[Char][Convert]::ToUInt32('6d',16)
$5=[Char][Convert]::ToUInt32('61',16)
$6=[Char][Convert]::ToUInt32('73',16)
$1+$2+$3+$4+$5+$6
结果
Thomas
如果您想操作任何其他格式,请在此处查找语法。
http://msdn.microsoft.com/en-us/library/system.convert%28v=vs.110%29.aspx
于 2014-01-18T07:50:59.977 回答
0
这里的主要思想(我认为这就是您要问的)是文本中的每个 Unicode 符号都使用其代码点值以十六进制表示法表示。
例如,根据 Unicode 标准,符号a
是U+0061 LATIN SMALL LETTER A,因此您可以将其表示为0x61
或61
十六进制。
这适用于 ASCII 符号。对于更高的代码点,它取决于表示。例如,十六进制数字列表可以引用字符串的 UTF-8 编码形式。
于 2014-01-18T17:58:25.597 回答