【C#】读取Excel中嵌套的Json对象,Json带斜杠的问题(其二)

上一篇说到的嵌套Json带有斜杠的问题,如下图:

上一篇中用反射C#类的方法,在序列化Json阶段实现了去掉斜杠,现在还有一种相对更简单的方法,就是在反序列化阶段,读取Json时通过字符串的操作,把这些斜杠去掉:

public void Test()
{
    string path = @"ItemTable.json"; // Json文件路径
    string json = File.ReadAllText(path, Encoding.UTF8);
    json = ClipSlash(json);
    ItemTable itemTable = JsonConvert.DeserializeObject<ItemTable>(json); // 使用Newtonsoft.Json库
}

private void ClipSlash(string json)
{
    string s1 = json.Replace("\"{\\", "{"); // "{\  -->  {
    string s2 = s1.Replace("}\"", "}");     // }"  -->  }
    string s3 = s2.Replace("\\\"", "\"");   // \"  -->  " 
    return s3;
}

注意反斜杠\的转义。这种方式更简便一些。

 

参考:https://blog.csdn.net/qiumuxia0921/article/details/42715627

 

posted @ 2018-09-06 19:46  霍莉雪特  阅读(502)  评论(0编辑  收藏  举报