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 en ignorant les 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
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Par défaut Parser en ignorant les caractères spéciaux
    Bonjour,

    J'utilise un saxparser pour insérer des variables sur des fichiers xml faisant office de configuration.

    Dans certain fichier je rencontre des balises tel que :

    <SearchWordsStoreRequestSQ>Text &lt;&gt; ''</SearchWordsStoreRequestSQ>

    Mon problème c'est qu'à l'écriture du nouveau fichier xml le saxparser interprete les deux expressions " &lt;&gt;;" en "<>". Cela change complètement le sens de la configuration dans cette balise.

    Comment utiliser (avec la méthode character() j'imagine) le parser pour ignoré l’interprétation de ce type de caractère ?

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    "&lt;" c'est la réprésentation xml de "<" , il est donc normal qu'en rencontrant "&lt;" le parser mette "<" dans la String et je ne vois pas en quoi c'est un problème. Si tu veux avoir "&lt;" dans la string, il faut que le xml de départ contienne "&amp;lt;"


    Concernant l'écriture, c'est à ton writer de faire le boulot de convertir les < et > en &lt; et &gt;

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Par défaut
    J'ai besoin de garder l'expression sous sa forme &lt;&gt; pour que l'outil qui utilise le fichier xml comprenne la configuration. En effet il reconnait uniquement la representation xml de < et > sinon il les interprètes comme une balise vide...

    Pour le writer j'utilise : OutPutStreamWriter out = new OutPutStreamWriter(newFileOutputStream(path),"utf-8");

    Donc pour toi c'est le writer qui change l'expression en sa représentation ? Il n'existe pas de moyen de passer au travers ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    quand tu utiliser un parseur SAX tu lit le fichier xml et tu interprète son contenu. Si à partir de là tu veux recréer un fichier xml, tu doit utiliser ou créer un générateur de xml qui, comme il se doit, transformera <> en &gt;&lt;

    Bref, même si tu as &lt;&gt; sur disque, en mémoire, c'est "<>".

Discussions similaires

  1. [Applet][XML] Ne pas interpréter les caractères spéciaux
    Par leminipouce dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 28/07/2005, 16h15
  2. [SAX] Problème avec les caractères spéciaux
    Par abdou.sahraoui dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 18/07/2005, 10h07
  3. [C#][ADO] Enlever les caractère spéciaux
    Par Oberown dans le forum Windows Forms
    Réponses: 3
    Dernier message: 10/01/2005, 18h38
  4. [Jsp] Supprimer les caractère spéciaux d'une chaine
    Par PeteMitchell dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 13/05/2004, 11h11
  5. Traiter les caractères spéciaux
    Par ricola dans le forum Langage
    Réponses: 2
    Dernier message: 20/02/2003, 09h23

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