我從外部系統(SSAS)中拉取文本並在ASP 2.0(.NET 4)中的TableCell中顯示文本。文本顯示爲£14,243,123.26(注意英鎊符號前)。在ASP中對英鎊符號進行編碼
我對此的理解是,c#使用UTF-16(SSAS可能與SQL Server一樣),並且ASP 2.0會將頁面顯示爲UTF-8,這就是發生的情況。這裏的區別可能導致顯示問題。
但是,這個問題似乎一般在引擎蓋下處理,所以我想知道爲什麼不在這裏?是否因爲ASP中的許多控件自動編碼字符串,因爲Table控件沒有?在桌面上使用Server.HtmlEncode似乎工作,但我希望這並不是無處不在。
謝謝,這有幫助。我在兩個地方遇到了問題,第一次在遊戲中「固定」,所以我不相信它不會重新出現。第二個是因爲我使用Encoding.Default.GetString()序列化JSON,將其更改爲Encoding.UTF8.GetString(),並且都很好。在這兩種情況下,字符都是U + 00a3,這是英鎊的正確Unicode字符。 –