TsCyrille Posted October 11, 2010 Share Posted October 11, 2010 Bonjour Je traite un fichier XML de la manière suivante (je récupère le XML d'un WebService et je le mets dans une 'String') : public DocXml(String asXML) throws ParserConfigurationException, SAXException, IOException{ factory = DocumentBuilderFactory.newInstance(); builder = factory.newDocumentBuilder(); document = (Document)builder.parse(new ByteArrayInputStream(asXML.getBytes("ISO_8859_15"))); } Tout est OK mais je rencontre un souci si l'une des valeurs d'un tag de mon fichier XML contient le caractère '&' (cad le code '&') : la valeur récupérée n'est pas complète (en fait la récupération de la valeur s'arrête au caractère '&'...) Est-ce que quelqu'un a déjà rencontré ce problème ? Merci d'avance Link to comment Share on other sites More sharing options...
Pierre87 Posted October 22, 2010 Share Posted October 22, 2010 tu es bien sur que l'encodage utilisé (ISO_8859_15) est bien le même lors de l'envoi et de la réception? tu as un message d'erreur via logcat? Link to comment Share on other sites More sharing options...
neoakira Posted November 4, 2010 Share Posted November 4, 2010 faut que tu concatènes ce que tu récupère dans la méthode characters() du handler tant que tu est dans la même balise XML, donc faut gérer un historique des balise durant le parsage... c'est le workaround que j'ai utilisé Link to comment Share on other sites More sharing options...
Arzbro Posted December 9, 2010 Share Posted December 9, 2010 Bonjour, le soucis, c'est que '&' est un caractère de contrôle pour XML, il permet de définir des entitées (&, < > , ...). Ton parser s'arrête donc au '&' parce qu'il ne comprend pas ce qui lui tombe dessus... Il faudrait que tu arrives à remplacer les '&' par des '&' avant la transformation de ton flux en XML. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.