2014-01-17 48 views
1

什么是将十六进制数字转换为文本的方法。例如文本中的54 68 6f 6d 61 73可以是托马斯。我认为我错误地将二进制小数的概念化为十六进制以及它们如何工作。十六进制数字到文本

+0

您是否总是寻求实现,或者您想知道如何使用特定语言来实现? –

+0

如果您在十六进制编辑器中打开文件,您会看到十六进制数字。但它只是字节,所以如果你知道文件的编码,你可以读取它并将其转换为Unicode。 –

+0

@RafalZiolkowski我只是想知道一般的实现。 – Arty

回答

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

0

这里的主要想法(我想这是你问)是文本中的每个符号的Unicode使用它的代码点值表示,在十六进制表示。

例如,根据Unicode标准,符号aU+0061 LATIN SMALL LETTER A,因此您可以用十六进制表示它为0x6161(十六进制)。

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

+0

我希望他们允许我们标记两个答案有帮助!赞赏您的输入! – Arty

相关问题