Serialising System.Strings包含%字符

时间:2013-12-04 10:58:56

标签: json.net

当我尝试序列化包含'%'字符的字符串时,会从序列化字符串中删除'%'。我可以改变这种行为吗?

由于 汤姆

1 个答案:

答案 0 :(得分:1)

百分比字符%在JSON中没有特殊含义(请参阅JSON.org),因此Json.Net不太可能干扰您的字符串。您的代码中是否还有其他内容可以删除百分号?你在某处通过URL解码器运行字符串吗?

证明Json.Net不会删除百分比:

class Program
{
    static void Main(string[] args)
    {
        JObject jo = new JObject();
        jo.Add("test", "100%");
        jo.Add("url", "http://example.org?foo=%34bar%34");
        Console.WriteLine(jo.ToString());
    }
}

输出:

{
  "test": "100%",
  "url": "http://example.org?foo=%34bar%34"
}