1

将十六进制数字转换为文本的方法是什么。例如,文本中的 54 68 6f 6d 61 73 可能是 Thomas。我认为我错误地用二进制和它们如何工作来理解十六进制小数。

4

2 回答 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 标准,符号aU+0061 LATIN SMALL LETTER A,因此您可以将其表示为0x6161十六进制。

这适用于 ASCII 符号。对于更高的代码点,它取决于表示。例如,十六进制数字列表可以引用字符串的 UTF-8 编码形式。

于 2014-01-18T17:58:25.597 回答