可能的重复:
使用stringescapehandling.escapenonascii与json.net
JSON.NET(4.5.11)的最新版本包含StringEscapeHandling.EscapeNonAscii
,它逃脱了所有非ASCII字符。但是,我不知道如何使用它。文档似乎没有我能找到的任何示例(只有发行说明宣布)。
有人可以使用EscapeNonAscii
显示将对象序列化为JSON字符串的示例?
也许此示例可以帮助
string obj = "abcnnrüö&/<>";
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();
}