Possible Duplicate:
Using StringEscapeHandling.EscapeNonAscii with Json.NET
最新版本的 Json.NET (4.5.11) 包含 StringEscapeHandling.EscapeNonAscii
,它转义了所有非 ASCII 字符。但是,我无法弄清楚如何使用它。文档似乎没有我能找到的任何示例(只有发布说明宣布它)。
有人可以展示一个使用 EscapeNonAscii
将对象序列化为 JSON 字符串的示例吗?
也许这个例子可以帮助
string obj = "abcn\n\rüö&/<>";
Console.WriteLine(Serialize(obj, StringEscapeHandling.Default));
Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeHtml));
Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeNonAscii));
public static string Serialize(object o,StringEscapeHandling stringEscapeHandling)
{
StringWriter wr = new StringWriter();
var jsonWriter = new JsonTextWriter(wr);
jsonWriter.StringEscapeHandling = stringEscapeHandling;
new JsonSerializer().Serialize(jsonWriter,o);
return wr.ToString();
}