JSON解析清单难以理解

时间:2013-07-01 20:30:00

标签: android json

所以我想从一个看起来像这样的网站解析Json File:

  

{       “tnum”:“12805”,       “tname”:“JANMABHOOMI EXP”,       “tdate”:“25-2-2013”​​,       “来自”:“GNT”,       “to”:“SC”,       “阶级”:“CC”,       “图表”:是的,       “numofpax”:2,       “pax”:[{               “教练”:“D2”,               “泊位”:“23”,               “quota”:“GN”,               “身份”:“CNF”           },{               “教练”:“S2”,               “泊位”:“43”,               “quota”:“GN”,               “身份”:“CNF”           }       ]}

这是我写的不完整的代码:

EditText num = (EditText)findViewById(R.id.pnr_num);
                     String numPNR= num.getText().toString();
                     url = "http://www.railpnrapi.com/";
                     url = url.concat(numPNR);
                     TextView t = (TextView)findViewById(R.id.textView1);
                     t.setText(url);

                    JSONObject jsonObj = null;
                    try {
                        jsonObj = new JSONObject(url);
                    } catch (JSONException e1) {
                        // TODO Auto-generated catch block
                        e1.printStackTrace();
                    }

                    // grabbing the menu object 
                    try {
                        String id = jsonObj.getString("tname");
                        TextView t1 = (TextView)findViewById(R.id.textView1);
                        t1.setText(id);
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } 

然而,每次我的应用程序崩溃。我甚至添加了网络访问权限!

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

我在哪里弄错了?谢谢。 附:这是我试图通过示例输入访问的网站:

  

http://www.railpnrapi.com/6520652825

1 个答案:

答案 0 :(得分:0)

您正尝试从传递给构造函数的URL字符串创建JSONObject,但这不起作用。

您需要将网址内容提取到String,然后将该字符串传递给JSONObject构造函数。

有关详细信息,请参阅this SO answer。关于如何做到这一点。