我有以下的測試,我一直在試圖讓工作錯誤字節數組轉換爲字符串測試
[Test]
public void Test()
{
byte[] testArray = new byte[] { 1, 0, 0, 1 };
string number = System.Text.Encoding.ASCII.GetString(testArray);
Assert.That(number, Is.EqualTo("1001"));
}
我收到以下錯誤
String lengths are both 4. Strings differ at index 0.
Expected: "1001"
But was: "\0\0"
這讓我爲難,因爲我的生產將字節數組轉換爲字符串的代碼使用相同的方法,然後我註銷字符串,這是我所期望的。
在這種情況下,在做轉換之前,我應該對字節數組做些什麼嗎?
謝謝,尼爾
只要嘗試反向'System.Text.Encoding.ASCII.GetBytes( 「1001」);'。你會得到'49,48,48,49' :) – 2012-08-15 12:52:18
你是否試圖將字符串'1001'轉換爲字節並檢查結果? – HonkyTonk 2012-08-15 12:52:20
@ L.B Bah,我太慢了。 ;) – HonkyTonk 2012-08-15 12:52:40