Fórum keySet() para iterar um array com várias chaves #544840
05/02/2016
0
Tenho aqui uma dúvida de como iterar um array com mais de uma chave. Ao usar o keySet(), meu programa retornou apenas a primeira posição do array. Como eu faria para percorre-lo e imprimir todos seus argumentos?
Trata-se da seguinte estrutura json:
"arguments": [
{
"name": "DirectoryHandle",
"value": "0x00000088"
},
{
Meu foreach encontra-se desta maneira:
Si Brandão
Curtir tópico
+ 0Posts
05/02/2016
Si Brandão
Json:
"arguments": [
{
"name": "DirectoryHandle",
"value": "0x00000088"
},
{
"name": "DesiredAccess",
"value": "15"
},
{
"name": "ObjectAttributes",
"value": "C:\Sessions`\BaseNamedObjects"
}
],Foreach
if(stringCallsKey.equals("arguments")) {
JSONObject argumentsObject = (JSONObject) argumentsArray.get(0);
for(Object argumentsKey : argumentsObject.keySet()) {
System.out.println(" Arguments "+argumentsKey+": "+argumentsObject.get(argumentsKey));
}
}Gostei + 0
05/02/2016
Jothaz
JSONArray jsonarr = new JSONArray("seu-json");
for(int i = 0; i < jsonarr.length(); i++){
JSONObject jsonobj = jsonarr.getJSONObject(i);
String str_course_slug=jsonobj.getString("campo1");
String str_course_description=jsonobj.getString("campo2");
}
Ou:
Iterator<JSONObject> iterator = jsonObject.values().iterator();
while (iterator.hasNext()) {
jsonChildObject = iterator.next();
String id = (String) jsonChildObject.get("id");
}
Ou:
for(int i = 0; i<jobject.names().length(); i++){
Log.v(TAG, "key = " + jobject.names().getString(i) + " value = " + jobject.get(jobject.names().getString(i)));
}
}
Gostei + 0
05/02/2016
Si Brandão
A estrutura do meu arquivo json encontra-se da seguinte forma:
"behavior": {
"processes": [
{
Gostei + 0
05/02/2016
Si Brandão
A estrutura do meu arquivo json encontra-se da seguinte forma:
"behavior": {
"processes": [
{
"calls": [
{
"arguments": [
{
}
...Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)