如何转换包含编码Unicode的JSON字符串

问题描述:

任何人都可以告诉我如何将以下json对象字符串(其中包含编码的u​​nicode字符(本例中为中文))转换为使用c#在asp.net中可读的字符?如何转换包含编码Unicode的JSON字符串

records:[{"description":"\u849c\u8089","id":282}] 

该字符串通过Ajax从Ext JS Web应用程序提交。

任何帮助,非常感谢。

我猜测它应该如下进行:

var bytes = Encoding.Unicode.GetBytes("<unicode string>"); 
// Return the Base64-encoded string. 
string str = Convert.ToBase64String(b); 
+0

不,它不起作用。 –

有没有必要这个字符串转换方面的特殊方式。任何JSON解码器或多或少地遵循该规范将自动为描述属性创建正确的字符串。

更新:

不过,您目前的样品是无效的JSON。它在整个样本周围丢失了括号或大括号,并且缺少围绕记录的双曲。

正确的JSON片段将是:

{"records":[{"description":"\u849c\u8089","id":282}]} 

,并提供:

  • 记录:
    • []
      • 描述:蒜肉
      • ID:282
+0

感谢您的快速回复。你会推荐哪个JSON解码器? –

+1

有.NET的内置[Json序列化程序](http://msdn.microsoft.com/en-us/library/bb412179.aspx),还有poppop [Json.NET](http://json.codeplex。 COM /)。我可以为大多数情况推荐。 – Codo

+0

谢谢你的帮助。非常感激。 –