如何将一个Json字符串转换为两个列表

如何将JSON字符串转换为两个列表。

listA可以获取密钥。

ex. listA[0] //"W3",listA[1] //"T1G" 

listB可以获取价值。

ex. listB[0] //[{"key":"W3H","ior": "2.150","ratio": "+1","sw": "Y"},{"key":"W3C","ior": "2.840","ratio": "-1","sw": "Y"}]  .

我的JSON字符串就像。

{
  "RatioData": [
    {
      "W3": {
        "W3H": {
          "ior": "2.150","ratio": "+1"
        },"W3C": {
          "ior": "2.840","ratio": "-1"
        },"W3N": {
          "ior": "3.300","sw": "Y"
      },"T1G": {
        "T1G6": {
          "ior": "11.500"
        },"T1G5": {
          "ior": "10.500"
        },"T1G4": {
          "ior": "7.900"
        },"T1G3": {
          "ior": "5.200"
        },"T1G2": {
          "ior": "4.350"
        },"T1G1": {
          "ior": "3.100"
        },"T1GN": {
          "ior": "7.900"
        },"RC": {
        "RCFN": {
          "ior": "0"
        },"RCLH": {
          "ior": "0"
        },"RCFH": {
          "ior": "0"
        },"sw": "N"," RCLC": {
          "ior": "0"
        }," RCFC": {
          "ior": "0"
        }
      },"HM": {
        "HMH": {
          "ior": "5.6"
        },"HMN": {
          "ior": "2.01"
        },"HMC": {
          "ior": "2.35"
        },"HR": {
        "HRH": {
          "ior": "1.03","ratio": "0 / 0.5"
        },"sw": "Y","HRC": {
          "ior": "0.85","ratio": "0 / 0.5"
        }
      },"HOU": {
        "HOUH": {
          "ior": "1.08","ratio": "0.5 / 1"
        },"HOUC": {
          "ior": "0.8","sw": "Y"
      }
    }
  ]
}

我已经尝试过了,但是结果不是我想要的。

  val type = object : TypeToken<MutableMap<String,Any>>(){}.type

                        var mapList:MutableList<MutableMap<String,Any>> = mutableListOf()

                        rationDataList.forEach { rationDataList ->
                            mapList.add(Gson().fromJson(Gson().toJson(rationDataList),type))
  }
cjxk01 回答:如何将一个Json字符串转换为两个列表

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3153712.html

大家都在问