2012-10-14 1 views
0

Je reçois un tableau de JSON du serveur comme ci-dessousQuel genre de JSON commence avec la longueur

69[0,{"dabcdefghij":{},"abcdefg":"20","abcdefghijklmn":"10, AB-11111"}] 

Je connais les données à l'intérieur [] est JSON. Mais le serveur envoie aussi la longueur du json. En ce moment je trouve la première occurrence de [ et en analysant le json.

Est-ce le bon chemin? J'utilise gson. Y a-t-il une meilleure méthode pour analyser cela?

+2

D'où vient votre "json"? Cela ressemble à un protocole fait maison avec un contenu de message codé en json. Je pourrais aussi être une erreur de serveur. –

+0

Quelqu'un a oublié un écho dans le code après "débogage" :)) – nvartolomei

+4

Je pense que vous devriez trouver celui qui a développé ce logiciel serveur et donner un coup de pied à son cul très fort. – GolezTrol

Répondre

1

69[0,{"dabcdefghij":{},"abcdefg":"20","abcdefghijklmn":"10, AB-11111"}] n'est pas valide JSON selon json.org car ce n'est pas un objet ni un tableau.

JSON est construit sur deux structures:

  • Une collection de paires nom/valeur. Dans divers langages, ceci est réalisé en tant qu'objet, enregistrement, struct, dictionnaire, table de hachage, liste , ou tableau associatif.

  • Une liste ordonnée de valeurs. Dans la plupart des langues, ceci est réalisé sous la forme d'un tableau, d'un vecteur, d'une liste ou d'une séquence .

+0

Merci pour la réponse, je suppose que le serveur envoie la longueur, car il est en streaming le JSON. Mais l'API de streaming n'a pas besoin de la longueur pour obtenir les objets JSON, c'est pourquoi je suis confus – nandeesh