如何将字符串编码为Json字符串文本

本文关键字:字符串 Json 文本 编码 | 更新日期: 2023-09-27 18:28:39

当我尝试在C#中以JSON格式检索SQL表内容时,例如:在JSON序列化后,内容Baden-Württemberg将被检索为"Baden-W''u00FCrttemberg"。我试试这个

byte[] bytes = Encoding.UTF8.GetBytes(input);
input = Encoding.UTF8.GetString(bytes);
var output = JsonConvert.SerializeObject(input);

但我得到了"巴登-符腾堡",我真的很想像演示一样http://www.percederberg.net/tools/text_converter.html,输入类型为明文,ISO-Latin-1

Baden-Württemberg

输出类型为JSON/Javascript/Java-字符串文本

"Baden-W'u00FCrttemberg"

我怎么能在C#.Net 中做

如何将字符串编码为Json字符串文本

您可以告诉JSON.NET转义所有非ASCII字符,如下所示:

var json = JsonConvert.SerializeObject("Baden-Württemberg", new JsonSerializerSettings
{
    StringEscapeHandling = StringEscapeHandling.EscapeNonAscii
});

json的值将为:

"Baden-W'u00fcrttemberg"

您可以通过ASCII编码通道发送生成的JSON字符串。