2011-12-08 11 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文字列は、ベトナムのアクセントが含まれています)

しかし、プロセス、私はエラー「非終端予測文字列の区切り文字を」受けました。行1、位置.... "(

đ& 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; 
} 
関連する問題