将JSON解析为android应用程序

时间:2013-04-11 15:02:40

标签: android json parsing

这是我的JSON,我必须解析它并在应用程序中显示它

{
"idUsuario":20,
"nomeUsuario":"Barbara Trzaskos",
"CPF":"978824029-15",
"email":"barbaratrzaskos@ufpr.br",
"sigla":"BTR",
"senha":"safira",
"instuicao":"Universidade Federal do Paraná",
"listaDePontos":[
{
"idPonto":"BTR0001",
"pontoNome":"BTR-0001",
"dtCampo":"2011-04-29T00:00:00",
"projeto":2,
"UTMEste":547276.0,
"UTMNorte":7285137.0,
"UTMFuso":22,
"UTMHemisferio":"S",
"latDec":-24.5469,
"longDec":-50.5332,
"altitude":0,
"descPonto":"Arenito mal selecionado. Apresenta fina banda de deformação, como um suave ressalto no relevo e coloração mais clara. Exibe plano subvertical com padrão anastomosado e cinemática aparente sinistral",
"complement":"Coleta de amostra orientada.",
"analiseCampo":{
"nomeEstrutura":"-",
"idAnCampo":"BTR0001",
"descEstrutura":"",
"ehBrunton":true,
"analiseEstruturais":[
{
"idEstrutura":"BTR0001001",
"ordem":0,
"tipo":"Plano",
"codigo":"F",
"brunton":"N42W/86SW",
"clar":"228/86",
"azimute":"228",
"direcao":"42",
"quadrante":"SW",
"sentido":"Sinistral",
"descricao":"",
"mergulho":"86",
"familia":""
}
]
},
"arquivos":[
],
"idUnigadeGeologica":[
{
"idUnidade":816
},
{
"idUnidade":2295
}
]
}
]
}

我该如何编译?因为这里有阵列和其他东西的数组,我不知道该怎么做。很抱歉代码是葡萄牙语,但我没有时间翻译。

1 个答案:

答案 0 :(得分:2)

首先使用您的JSON字符串构建JSON对象:

JSONObject jObject = new JSONObject(JSONString);

然后你可以使用

从中获取一个字段
jObject.getString("nomeUsuario");

如果你想使用数组

JSONArray jArr = new JSONArray(jObject.getString("listaDePontos"));

然后以这种方式遍历数组

for (int i = 0; i < jArr.length(); i++) {
    JSONObject temp = jArr.getJSONObject(i);
    //get everything from 'temp' here just like above

}