2010-08-13 6 views
0

J'ai une question générale, j'ai utilisé NSXMLParser pour analyser un très grand fichier XML contenant des tableaux d'octets d'images envoyées à partir d'un service web à l'iPhone. J'ai essayé de passer à AQXMLParser pour réduire l'empreinte de mémoire mais maintenant je suis incapable de décoder mes tableaux d'octets de la même manière. Lors de l'analyse de l'URL, j'utilise foundCharacters pour lire la chaîne de l'octet [] et la passer à un code standard que j'ai trouvé sur le réseau qui me renvoie le NSData que j'utilise ensuite pour créer mon image. L'erreur que je reçois avec AQXMLParser est "Application transférée trop peu de lignes de balayage". Mon soupçon était que parce que AQXMLParser tronque les données ma classe d'analyse ne reçoit pas assez de données d'image dans un morceau pour lui permettre d'analyser l'image entière?AQXMLParser impossible d'analyser byte-array?

Est-ce que quelqu'un sait pourquoi cela fonctionnerait bien avec NSXMLParser mais pas avec AQXMLParser? Ou quelqu'un peut-il suggérer un meilleur moyen d'envoyer des images de mon service web, plutôt nouveau dans tout ça! Les images doivent être envoyées à l'appareil et sont ensuite stockées localement pour un accès ultérieur, les héberger sur le Web et leur accès via une URL n'est pas une option.

Toutes les pensées que quelqu'un a serait utile, je peux poster du code si besoin est.

Merci :)

Répondre

1

ne répond pas directement à votre question, mais XML est assez terrible pour les données binaires. Avez-vous envisagé de l'héberger sous forme de fichiers individuels ou dans un fichier zip? ZipArchive est vaguement raisonnable.