IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

Parser un xml contenant des caractères spéciaux


Sujet :

Format d'échange (XML, JSON...) Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut Parser un xml contenant des caractères spéciaux
    Bonjour

    J'ai besoin de parser un xml contenant des chaines de ce type là :

    §SÅO8Л°n7OS’žiÁR?qvlmÅq^Š\u8482 ‡
    J'ai donc une exception qui est levée :

    org.jdom.input.JDOMParseException: Error on line 5 of document file:/C:/Documents%20and%20Settings/Baptiste/Bureau/passwd/Special.xml: Invalid byte 1 of 1-byte UTF-8 sequence.
    J'en viens donc à mes question : comment spécifier l'encodage avec JDOM ? Et aussi, quel codage dois-je employer ?


  2. #2
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Personne ne sait comment gérer des caractères spéciaux en xml ?

  3. #3
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    En fait, il suffit de modifier le paramètre encoding du fichier...

    mais je sais pas quel encore mettre...

    Sachant que ce que je chercher à encoder est le résultat d'un cryptage SHA-512...

  4. #4
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    J'ai essayé en spécifiant un encodage UTF-16 :

    FEFF<?xml version="1.0" encoding="UTF-16BE"?>
    <balises>
    <balise>
    <value1>Bonjour</pseudo>
    <value2>¶…m:›u8216 LÀŸÓä-‰ÓÓ’V®¾Ø'P}h6úoží;?Æ</password>
    </balise>
    </balises>
    mais maintenant, JDOM me crache une erreur :

    Error on line 1 of document : Content is not allowed in prolog.
    Quelqu'un sait comment régler ce problème ?

  5. #5
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Alors, y a t'il une autre API qui permet de manipuler des XML contenant des caractères spéciaux ?

    Sinon, je crois que je tout foutre dans un fichier texte....

  6. #6
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Citation Envoyé par wichtounet
    comment spécifier l'encodage avec JDOM ? Et aussi, quel codage dois-je employer ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    /**
     * http://www.jdom.org/docs/apidocs/org/jdom/input/SAXBuilder.html#build(java.io.Reader)
     * 
     * It's the programmer's responsibility to make sure the reader matches
     * the encoding of the file. It's often easier and safer to use an
     * InputStream rather than a Reader, and to let the parser auto-detect
     * the encoding from the XML declaration.
     */
    /**
     * http://www.jdom.org/docs/apidocs/org/jdom/output/XMLOutputter.html
     * 
     * Unfortunatly there is currently no way to know the original encoding
     * of the document.
     */
    Citation Envoyé par wichtounet
    §SÅO8Л°n7OS’žiÁR?qvlmÅq^Š\u8482 ‡
    Citation Envoyé par wichtounet
    ce que je chercher à encoder est le résultat d'un cryptage SHA-512
    Les bits de condensé produits par toutes les fonctions de la famille SHA (Secure Hash Algorithm) sont "toujours" en notation hexadécimale (0-9+a-f).

    Citation Envoyé par wichtounet
    Error on line 1 of document : Content is not allowed in prolog.
    Essaye en rajouter une ligne vide à la fin de ton fichier XML.


  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Par défaut
    ou de supprimer "FEFF" au début si c pas une erreur de copier coller

    essaye aussi de mettre tout ça dans un CDATA

    ou encore si c'est toi qui écrit le fichier en java essaye
    org.apache.axis.components.encoding.XMLEncoderFactory..getDefaultEncoder().encode(taChaine)
    quand tu le mets dans ton fichier

  8. #8
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Merci de vos réponses

    Je vais tester tout ca

    Et je vous dis ce que ca donne.

  9. #9
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Bon, ben ca marche toujours pas...

    Je crois que ce projet va rester encore un moment aux oubliettes...

    J'ai essayé en mettant le <![CDATA[, j'ai essayé en supprimmant le FFEF au départ (en fait, c'est pour indiquer un truc au format de codage), mais pas moyen...

    Ca m'énèrve

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Par défaut
    et en encryptant à la génération ?

Discussions similaires

  1. json_encode remplace les mot contenant des caractères spéciaux par null
    Par tojosource dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/06/2010, 20h04
  2. Passage de paramètres contenant des caractères spéciaux (+, -,etc.)
    Par Mil17 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/06/2008, 11h21
  3. Probléme avec requétes contenant des caractéres spéciaux
    Par dragonfly dans le forum Requêtes
    Réponses: 1
    Dernier message: 08/11/2007, 17h20
  4. Nettoyer une chaine contenant des caractères spéciaux?
    Par adil_vpb dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/05/2007, 15h47
  5. Réponses: 1
    Dernier message: 22/01/2007, 20h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo