【问题标题】:How to parse this Json-String with Gson?如何用 Gson 解析这个 Json-String?
【发布时间】:2019-08-19 13:19:34
【问题描述】:

我想从 web-api 解析一个 Json 字符串。就是这样:

{
"RANDOM_ID": {
  "lnk_typ": "pdf",
  "lnk_description": "Description 1",
  "lnk_link": "https://example.com",
  "direktdownload": "https://example.com/download1"
},
"RANDOM_ID": {
  "lnk_typ": "lnk",
  "lnk_description": "Description 2",
  "lnk_link": "https://example.com",
  "direktdownload": "https://example.com/download2"
}
}

现在我的问题:

RANDOM_ID 可以是每个正数,所以它可以是 230 或 5(或 每隔一个正数)。

对象的数量也可以改变,我 意味着可能不止 2 个 RANDOM_ID-Objects。

我想知道,如何解析这个 Json。我更喜欢用 Gson 来做这件事,但如果有办法做到这一点,它也可以手动解析。

【问题讨论】:

  • 如果可能的话,我会从 api 更改数据的结构。有可能吗?
  • 已经问过多次了...自定义序列化程序或字典
  • 是的,这是可能的。谢谢您的回答!我会尝试修改api输出。

标签: android json multidimensional-array gson


【解决方案1】:

你需要有一个类来代表你的 json 字符串 您可以手动完成或使用以下方式生成它:http://www.jsonschema2pojo.org/(设置您的包名,类名,选择 json 作为源类型,选择 gson 作为注释样式)

然后你可以像这样从对象中获取项目:

MyObject.getLnkTyp();

【讨论】:

  • 是的,我试过了,但是用这种方法获取随机id并不容易。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多