8820670
V2EX  ›  问与答

新手自学安卓开发,在解析 JSON 上的一点问题,希望得到解答。

  •  
  •   8820670 · Jul 4, 2016 · 2519 views
    This topic created in 3690 days ago, the information mentioned may be changed or developed.

    最近在自学安卓开发,打算开发本地公交实时位置的的第三方客户端

    在解决了 POST 问题后 遇到了 JSON 解析的问题 返回的 JSON 如下 是一个 JSON 数组

    JSON

    起先 使用了自带的 org.json 折腾许久 总是报错 (无备份 就没有图了 0.0 )

    多次修改后 改使用 gson 似乎遇到了跟 org.json 一样的报错

    修改多次后 仍然报错 只能怪自己能力不足 希望得到 V2EXER 的指教

    解析代码如图

    解析代码

    BusList 类如下

    BusList

    报错信息如下

    报错

    (92 行为 busListJson(Json))

    还有奇怪的一点 在解析代码中 使用 for(int i=0;i<lists.size();i++) 与使用 foreach 用断点 debug 发现 不是不会运行里面的代码 就是第一句就报错了(报错如上)

    希望得到指教~

    5 replies    2016-07-04 18:03:07 +08:00
    bqbkbz
        1
    bqbkbz  
       Jul 4, 2016   ❤️ 1
    有没有可能 List<BusList> 外面还有一层,比如 {JSON : List<BusList>} ,因为你第一个图的格式很不直观。
    Ouyangan
        2
    Ouyangan  
       Jul 4, 2016   ❤️ 1
    StartEndSites 是一个属性 . 再打打 java 基础
    8820670
        3
    8820670  
    OP
       Jul 4, 2016
    @zhaohui318
    ![]( https://ooo.0o0.ooo/2016/07/04/577a1da1bfad0.png)

    @Ouyangan StartEndSites 对应一个 JSON 数组 GSON 是用一个 List 来对应一个 JSON 数组的好像 不对的话请指教。
    Ouyangan
        4
    Ouyangan  
       Jul 4, 2016   ❤️ 1
    @8820670 意思是这样 ,
    public class A {
    private int age;
    private String name;
    private B b;
    }
    8820670
        5
    8820670  
    OP
       Jul 4, 2016
    @Ouyangan
    @zhaohui318

    问题解决啦 QAQ 其实 就是有两个 LineName 然而我只写了一个 还有好几个大小写的问题
    粗心大意了
    谢谢你们的回答啦~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   888 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:20 · PVG 05:20 · LAX 14:20 · JFK 17:20
    ♥ Do have faith in what you're doing.