当前位置: 首页 > 面试题库 >

如何使用Json.NET StringEscapeHandling.EscapeNonAscii [重复]

苏浩瀚
2023-03-14
问题内容

Json.NET(4.5.11)的最新版本包含StringEscapeHandling.EscapeNonAscii,它转义了所有非ASCII字符。但是,我不知道如何使用它。这些文档似乎没有任何我可以找到的示例(只有发布它的发行说明)。

有人可以显示一个使用序列化对象为JSON字符串的示例EscapeNonAscii吗?


问题答案:

也许这个例子可以帮助

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();
}


 类似资料:
  • 我得到的错误要求没有定义。 我该怎么解决呢?我试图将带有colormap的js文件直接导入到html中(这样javascript文件就有了引用),但我找不到应该导入什么文件。

  • 我试图在VPS上部署我的应用程序,但出现了一个错误: 我将添加到环境变量中: 但是我得到了同样的错误。 secrets.production.yml:

  • 我试图在JS中使用require,但我得到以下错误我必须要文件。:

  • 我目前正在尝试将网站上使用的徽标应用于打印页面上的某个位置。这样做,我想以不同的方式填充它。然而,填充效果似乎不起作用。 当我在单独的选项卡中查看logo.svg并检查它时,我可以成功地用新颜色填充它的两个组件中的每一个。 但是,当我将它作为背景图像带入打印页面上的DIV时,填充不再起作用。有人能告诉我这是什么原因吗? 在SVG页面上,我可以成功地完成以下操作。 (正如我前面提到的,SVG似乎由两

  • 这种方法很不一致。我肯定这不是实现这一点的正确方法。