Ir ao conteúdo
  • Cadastre-se

keySet() para iterar um array com várias chaves


Posts recomendados

Bom dia pessoal!

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"
}, 
{
"name": "DesiredAccess", 
"value": "15"
}, 
{
"name": "ObjectAttributes", 
"value": "C:\Sessions`\BaseNamedObjects"
}
],

Meu foreach encontra-se desta maneira:

  if(stringCallsKey.equals("arguments")) {
                                    
                                    JSONObject argumentsObject = (JSONObject) argumentsArray.get(0);
                                    
                                    for(Object argumentsKey : argumentsObject.keySet()) {
                                        System.out.println("        Arguments "+argumentsKey+": "+argumentsObject.get(argumentsKey));
                                    }
                                }

 

Link para o comentário
Compartilhar em outros sites

Oi, para acessar esse array você pode fazer o seguinte:


    JSONArray jsonArray =  SeuJSONObjeto.getJSONArray("arguments");
    //faz um loop em todos os objetos dentro do seu Objeto principal ("arguments")
    for (int i = 0, size = jsonArray.length(); i < size; i++)
    {
      JSONObject obs = jsonArray.getJSONObject(i); //Pega o objeto filho
      String name = obs.getString("name");
      String value = obs.gteString("value")
    }

Com isso você pode conseguir cada chave e valor.

Boa sorte :)

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...