JDOM caractères spéciaux [Résolu]

Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
- - Dernière réponse : didoux95
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
- 16 févr. 2008 à 12:31
Bonjour a tous.
Pour parser des fichiers XML, j'utilise l'api jdom. J'ai créer un fichier dans lequel se trouve des caractères tel que ">>" "<<" "&", ...
Lorsque je parse ce fichier, jdom m'indique des erreurs.
Voici un exemple de ligne du fichier : <commande cmd = "&"></commande>
Voici l'erreur associé à cette commande : The entity name must immediately follow the '&' in the entity reference.
Dans mon programme, je récupère la commande (cmd) et je m'en sers comme patern. Mais apparemment là c'est avant d'utiliser la commande que l'exception se produit.

Si vous avez des suggestions pour éviter ce problème.. (comment noté le caractère, ...)
merci.
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

C'est que ton fichier xml est mal formé : ces caractères ne doivent pas être présent directement dans un fichier xml : il faut les remplacer par les codes HTML correspondants !
______________________________________
DarK Sidious

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Il me semble pas que le "+" soit un caractère interdit en XML !

Il me semble que seul les caractères : <, &, ', et " sont interdits en XML.

Va lire ceci pour plus de détail :
http://www.journaldunet.com/developpeur/tutoriel/xml/041027-xml-caracteres-speciaux.shtml
______________________________________
DarK Sidious

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Quel encodage utilises-tu ?

Essaye de voir avec un outil dédié à l'écriture d'un fichier xml si celui-ci est bien correct (outil du style spy-xml).
______________________________________
DarK Sidious

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
1
3
Merci
J'utilise JCreator (qui permet d'éditer egalement des fichiers java). L'encodage et ISO-8859-1 (je l'ai remplacé après avoir l'article que tu m'a passé). Je pense avoir trouver la solution. Il suffit d'indiquer que c'est LE caractère que l'on veut insérer dans le patern (avec le "") : pour le "+" ca va donner "\&#43;"

merci de ton aide.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de didoux95
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
1
0
Merci
Merci.
Commenter la réponse de didoux95
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
1
0
Merci
Une derniere petite chose, j'ai valider qu'après avoir essayer quelque caractères.
Il se trouve que certians caractère n'ont pas de code html (ou alors il n'est pas donné) .. :s comment on fait ?
Par exemple le "+". J'ai remplacer par le code ISO mais j'ai toujours une erreur (comme si le caractère était écrit en tout lettre (&#43 -> +).

merci.
Commenter la réponse de didoux95
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
1
0
Merci
Slt.
Tu dois surement avoir raison. Car même en changant l'encodage du fichier j'obtient toujours une exception.
Ce qui m'étonne c'est qu'elle ne vient plus/pas du parseur JDOM mais du Patern: Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0
Savez vous si il est possible d'éviter ce problème ? Faut-il a nouveau changer l'encodage ?

merci.
Commenter la réponse de didoux95