2014-02-18 113 views
2

我正在處理字節數組和字符串。我有一個字節數組,我修改,然後用於生成一個字符串。我看了很多在這個網站上的帖子,推薦使用BlockCopySystem.Text.Encoding.Default.GetString();我已經嘗試過這些,但由於某種原因,我得到的字符串有所有亂碼字符。使用字節數組和字符串

這是問題和我的期望。可以說我有個字節的十六進制編碼的字符串如下:

string str = "f20bdba6ff29eed7b046d1df9fb70000"; 

對應陣列是:

byte[] arrayStr = new byte[] { 0xf2, 0x0b, 0xdb, 0xa6, 0xff, 0x29, 0xee, 0xd7, 0xb0, 0x46, 0xd1, 0xdf, 0x9f, 0xb7, 0x00, 0x00 }; 

請注意,在上面的字符串2個字符表示字節。

現在,讓我們說我操縱arrayStr並將數組索引4(0xff)處的字節更改爲(0xe1)。我想,我應該能夠得到一個字符串這樣的:

字符串str = 「f20bdba6 E1 29eed7b046d1df9fb70000」;

回答

1

BitConverter

string str = BitConverter.ToString(arrayStr).Replace("-", ""); 
+0

感謝lot.That工作.. – CSC