2011-12-08 41 views
1

我允許來自客戶端上的TinyMCE的用戶輸入並將其存儲爲JSON字符串,然後將其傳遞給服務器ASP.NET C#。帶有HTML編碼字符的文本的Newtonsoft.JSON錯誤

JSON字符串看起來是這樣的:

{ "mcfn2" : ";lt;p;gt;Trước đ& oacute;, việc tung ra t& ecirc;n miền lần đầu ti& ecirc;n được sự đồng & yacute; của ICANN - tổ chức quản l& yacute; t& ecirc;n miền quốc tế" }
(JSON字符串包含越南口音)

但是,當在服務器過程中,我收到錯誤「未終止字符串分隔符預期。」。第一行,位置......「(看起來像是因爲

đ& oacute;
而發生的錯誤)(在這個頁面中,我用一個空格隔開&後面的字符,因爲如果沒有空格,它會自動轉換爲越南語)

有沒有錯誤,如果用戶輸入英文文本(無越南口音)。

請指導我如何解決這個錯誤。

回答

0

我知道此時這可能不會有用你,但也許它可以幫助另一個人

你應該轉換你的st在將它序列化爲JSON之前,先向UTF8響應以處理重音符號(越南語和許多其他語言)。爲此,您可以使用此功能:

private string ConvertToUtf8(string textOriginal) 
{ 
    if (!string.IsNullOrEmpty(textOriginal)) 
    { 
    byte[] bytes = Encoding.Default.GetBytes(textOriginal); 
    return Encoding.UTF8.GetString(bytes); 
    } 
    return string.Empty; 
}