0
爲什麼文本框中的符號與ascii表有不同的ascii值?
例如,我有這個符號‰
(DEC從ASCII表= 137)在 文本框,我嘗試使用此代碼從文本框得到字節:爲什麼文本框中的符號與ascii表有不同的ascii值
Dim array() As Byte = System.Text.Encoding.ASCII.GetBytes(textbox.text)
和i顯示了它在控制檯
Console.WriteLine(array(0))
結果是「48」,它應該是ASCII表中的137。
有人能告訴我發生了什麼嗎?
48 =問號( 「?」) – hagant
ASCII字符值使用七位,所以它們只能達到127.由於ASCII.GetBytes對此非常嚴格,它使用問號來表示錯誤字符。 –
[ASCII](https://msdn.microsoft.com/en-us/library/system.text.encoding.ascii(v = vs.110).aspx)是一種7位編碼,不包含該字符,所以'GetBytes'返回回退字符(應該是0x3F「?」)。您可以嘗試使用'System.Text.Encoding.Default',而這將是您的系統的ANSI代碼頁,或者使用特定的單字節代碼頁。 – Mark