Lecture XML très étrange

Signaler
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
-
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
-
bonjour,

voici mon fichier : (créé par XmlTextWriter)
<?xml version="1.0" standalone="yes"?>
<myConfig>
</myConfig>
Pas trsè compliqué

J'utilise XmlTextReader comme ceci :
1                tr = new XmlTextReader("output.xml");
2                tr.Read();

3                string str = tr.Name;
4                if (tr.Name.CompareTo("myConfig") == 0)
                  ......

Lorsque je mets un point d'arrêt à la ligne 3 et que je fais du pas à pas, pas de pb str = myConfig.
Par contre si je mets le point d'arrêt à la ligne 4 (ou pas de point d'arrêt) str = xml.

Quelqu'un peut m'éclairer sur cet étrange comportement ?

merci

6 réponses

Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
65
Tu es sûr qu'avec le break point en 3 il te met myConfig ?

J'ai repris ton code, et il me met xml dans les deux cas.
Ce qui est normal, car il vient de lire la ligne "<?xml version="1.0" standalone="yes"?>"

Amicalement, SharpMao
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
4
Ah !! Encore un mystère de l'informatique.

Je suis avec VS2003 sousWin2000.
Je vais tester sur une autre machine pour voir si j'ai le même bug.
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
65
J'avais essayé  avec VS2005, mais je viens d'essayer avec VS2003, et même résultat.
Je ne pense pas que Win200 ou WinXP fasse une différence, mais on ne sait jamais.

Est-ce que le code que tu as mis est réel, ou est-ce un résumé ?
Ta variable str est-elle réellement déclarée à la ligne 3 ?

Amicalement, SharpMao
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
4
Ces 4 lignes se suivent réellement, j'ai rien avant, et j'ai bien sure le reste du code après.
Mais je remarque qu'il faut que je fasse très attention aux fonctions de lecture qui lisent et déplacent automatiquement le pointeur vers le noeud suivant.

Maintenant, j'ai contourné mon problème de if avec un while, mais c'est dangereux surtout si l'écriture se passe mal et que myConfig n'existe plus.
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
Ce n'est que lorsque tu passes à la ligne 4 que l'instruction de la ligne 3 est executée.
Assure toi d'initier ta variable str avant de l'utiliser.

[:D] @++
Messages postés
1115
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
6 mai 2021
4
je comprend que dalle, ce matin j'ai refais un test, et je n'ai plus de problème : str = xml dans les 2 cas.
Je vous jure, j'ai rien changé au code !!