2009-08-26 53 views
2

我有一个十六进制值的8位无符号整数数组,的16进制数VB.NET

07A5953EE7592CE8871EE287F9C0A5FBC2BB43695589D95E76A4A9D37019C8

,我想转换为字节数组。

是否有.NET 3.5的内置功能,将完成这项工作或我需要通过每对字符串写入循环的功能,并转换成它的8位整数等同?

回答

2

没有内置功能,将做到这一点。你会很遗憾不得不编写一个高达:(

Public Function ToHexList(ByVal str As String) As List(Of Byte) 
    Dim list As New List(Of Byte) 
    For i = 0 to str.Length-1 Step 2 
    list.Add(Byte.Parse(str.SubString(i,2), Globalization.NumberStyles.HexNumber)) 
    Next 
    Return list 
End Function 

编辑

合格NumberStyles枚举与全球化命名空间限定符。另一种选择是导入命名空间和删除限定符。

+0

谢谢你张贴的代码。可能是一个noob问题,但我得到的NumberStyles不DECL ARED?我知道这将是Dim NumberStyles为?谢谢 – shaiss 2009-08-26 16:16:43

+0

@shaiss尝试在文件导入System.Globalization。 – JaredPar 2009-08-26 16:20:39

+0

现在,我得到“十六进制”不是的成员“System.Globalization.NumberStyles” – shaiss 2009-08-26 16:22:49

0

我想,你会发现你在找什么here(codeproject.com)

+0

我看着这个为好,我希望为内置于.NET的东西 – shaiss 2009-08-26 16:17:26