如何使用字符串数组制作json文件?

我有一个字符串数组。我想从中创建一个 JSON 文件,使用字符串作为属性名称和最终值将其映射到嵌套对象的层次结构。例如,如果数组包含{"A", "B", "C", "D"},则生成的 JSON 文件应如下所示


{

  "A": {

    "B": {

      "C": "D"

       }

    }

}

有什么办法可以做到这一点吗?


动漫人物
浏览 44回答 1
1回答

墨色风雨

您可以使用 LINQ 和 JSON 序列化程序从字符串数组生成一组嵌套的 JSON 对象(json.net或者javascript序列化器) 如下:var input = new[]{"A","B","C","D"};var data = input    .Reverse()    .Aggregate((object)null, (a, s) => a == null ? (object)s : new Dictionary<string, object>{ { s, a } });var json = JsonConvert.SerializeObject(data, Formatting.Indented);该算法的工作原理是反向遍历传入的字符串序列,返回最后一项的字符串本身,并返回一个字典,其中的条目由当前项作为键,并由先前返回的后续项的对象进行赋值。随后可以对返回的字典或字符串进行序列化以产生所需的结果。演示小提琴在这里。
打开App,查看更多内容
随时随地看视频慕课网APP