【问题标题】:Need to convert JSON to an Array in same order需要以相同的顺序将 JSON 转换为数组
【发布时间】:2011-10-10 19:13:31
【问题描述】:

我需要使用一个包含 8000 个元素(类/子类)的巨大 JSON。我需要以相同的顺序将它作为一个直数组(1-8000)。我可以不创建课程吗?

字典对象没有给我有序的项目。

{
"Root":{
  "A":{
     "Q1":"1",
     "Q2":"2",
     "Q3":"3"
  },
  "B":{
     "Q1":"4",
     "Q2":"5",
     "Q3":"6"
  },
  "X":{
     "Y1":"11",
     "Y2":"22"
  }
},
"SUB":{
  "A":{
     "Q1":"10",
     "Q2":"20",
     "Q3":"30"
  },
  "X":{
     "Y1":"110",
     "Y2":"220"
  }
 }
}

转换类似下面的数组

  A-Q1,1
  A-Q2,2
  A-Q3,3
  B-Q1,4
  B-Q2,5
  B-Q3,6
  X-Y1,11
  X-Y2,22
  SUB-A-Q1,10
  SUB-A-Q2,20
  SUB-A-Q3,30
  SUB-X-Y1,110
  SUB-X-Y2,220

【问题讨论】:

  • List 对象怎么样?我想应该生成与 JSON 中相同的顺序。
  • “巨大的 JSON”是一个真正的哈希对象吗?如果是这样,您期望其字段按任何特定顺序排列是错误的。如果没有,请发布一些代码,以便我们查看问题所在。
  • 通过示例添加要求
  • 好的,就像我说的那样。期望键以任何特定顺序排列是错误的。
  • “不创建类”是什么意思?

标签: .net arrays json


【解决方案1】:

因为,在 JSON 中:

对象是一组无序的名称/值对

您的选择是:

  1. 更改源,使其提供对象数组而不是一组键/值对
  2. 编写一个不将其视为 JSON,而是将其解析为您喜欢的数据结构的自定义解析器

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-15
    • 2011-05-11
    相关资源
    最近更新 更多