2009-08-26 57 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