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

XML/XSL et SOAP Discussion :

ne pas interpréter les "<" et ">" dans fichier xml


Sujet :

XML/XSL et SOAP

  1. #1
    Nouveau membre du Club
    Développeur Web
    Inscrit en
    Janvier 2011
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2011
    Messages : 49
    Points : 39
    Points
    39
    Par défaut ne pas interpréter les "<" et ">" dans fichier xml
    Bonjour,
    je génère un fichier excel codé en xml à partir d'une source de donnée.
    Or lorsque j'essaye de l'ouvrir avec excel, le logiciel me renvoit une erreur. Après recherche je vois que l'erreur vient d'une des données de la BD qui contient des "<" et ">".
    Exemple de l'erreur dans le fichier xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <ss:Cell><ss:Data ss:Type="String"> titre<ER> </ss:Data></ss:Cell>
    le problème est que le xml veut lire le <ER> comme une balise.

    Quelqu'un aurait une idée? (je ne peux pas supprimer le <ER> il faut qu'il apparaisse dans le fichier excel.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Il faut échapper les < et >, comme en HTML.
    Deux possibilités :

    ou bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <![CDATA[ titre<ER> ]]>
    La balise CDATA est une construction spéciale qui indique que son contenu doit être considéré tel quel comme du texte, et pas interprété comme du XML. Sauf ]]>, qui sert à la fermer.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau membre du Club
    Développeur Web
    Inscrit en
    Janvier 2011
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2011
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    merci, je ne peux pas utilisé de CDATA car cela va alourdir le fichier.

    J'ai deja essayé de remplacer les "<" par &lt et les ">" par &gt, le problème est que quand j'ouvre excel, le cellule contient: &ltER&gt

    Je ne spécifie pas d'encodage dans ma déclaration xml, peut être que l'erreur vient de la, avez vous une idée?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Kirua76 Voir le message
    J'ai deja essayé de remplacer les "<" par &lt et les ">" par &gt, le problème est que quand j'ouvre excel, le cellule contient: &ltER&gt
    Il ne faut pas oublier les ;

    Comme en HTML, donc.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Nouveau membre du Club
    Développeur Web
    Inscrit en
    Janvier 2011
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2011
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    j'ai donc remplacé les "<" et ">" par &lt; et &gt; et donc excel ouvre le fichier et affiche:

    &lt;<ER>&gt;

    n'es ce pas un problème d'encoding? car mon fichier xml est défini de la façon suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <?xml version=\"1.0\"?>

  6. #6
    Nouveau membre du Club
    Développeur Web
    Inscrit en
    Janvier 2011
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2011
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    ou peut être définir dans les propriétés de cellule pour excel? je ne sais pas du tout.

  7. #7
    Nouveau membre du Club
    Développeur Web
    Inscrit en
    Janvier 2011
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2011
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    Je viens d'utiliser sur ma chaine un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine=HttpUtility.HtmlEncode(chaine);
    en c# et cela fonctionne parfaitement.

  8. #8
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Un document XML ne contient pas version=\"1.0\" mais version="1.0"

    Ce qui signifie que ce que tu nous as montré, et probablement ce sur quoi tu travaillais, avait déjà un premier niveau d'échappement, et n'était pas un document XML mais du XML inséré dans un autre langage.

    Ce qui a solutionné ton problème pourrait donc bien ne s'appliquer qu'à toi.
    Mais ravi que tu aies obtenu ce que tu veux.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. manipuler les balises dans fichier xml
    Par farid0031 dans le forum C++Builder
    Réponses: 4
    Dernier message: 20/12/2011, 14h25
  2. Stocker les variables dans fichier XML
    Par cdoctora dans le forum Langage
    Réponses: 4
    Dernier message: 16/11/2008, 10h48
  3. Ne pas interpréter les fichiers PHP
    Par pmithrandir dans le forum Apache
    Réponses: 5
    Dernier message: 12/02/2008, 17h57
  4. [XSLT] Ne pas interpréter les namespaces du XML généré ?
    Par Invité dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 06/09/2007, 18h24
  5. [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

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