2011-08-16 151 views
3

我不想將string編碼爲byte[]。我想將十六進制數字的string變成byte[]。我怎樣才能做到這一點?如何將十六進制字符串轉換爲字節[]

注意:我再次重複我不想使用Encoding.UTF8.GetBytes()或任何其他編碼。

樣本string詳述如下:

0x42A2C6A046057454C2D1AB2CE5A0147ACF1E728E1888367CF3218A1D513C72E582DBDC7F8C4674777CA148E4EFA0B4944BB4998F446724D4F56D96B507EAE619 

我怎麼能轉換這個stringbyte[]數字的的字符串中。

+2

爲什麼'Encoding'類不適合?你想解決什麼問題? – Oded

+0

看到這個http://stackoverflow.com/questions/472906/net-string-to-byte-array-c –

+1

你想將字符串轉換爲字節數組,但你不想指定編碼。你怎麼可能解碼它回到一個字符串,而不知道它是如何編碼的? – asawyer

回答

2

沒有明確的方法將字符串轉換爲字節數組,這就是爲什麼您需要使用Encoding類。在你的情況下,你可以使用Encoding.ASCII.GetBytes(),因爲你只有來自ASCII字符集的字符。

+0

-1。 0xA2不是ASCII中的有效字符。 –

相關問題