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

 .NET Discussion :

Modification d'un fichier XML - La sauvegarde modifie l'Encoding [VB.NET]


Sujet :

.NET

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Modification d'un fichier XML - La sauvegarde modifie l'Encoding
    Bonsoir,

    Je souhaite réaliser la modification d'un fichier Xml existant.

    Voici le fichier XML :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <stream>
    	<configuration>
    		<number>a1-b2-c3-d4-c5</number>
    		<host></host>
    		<ip>192.168.1.10</ip>
    		<plus>
    			<port>8083</port>
    		</plus>
    	</configuration>
    </stream>

    Mon code ci-dessous va renseigné une valeur sur Host et supprimer la valeur ip.
    La modification s'effectue correctement. Par contre l'enregistrement du fichier XML modifie la valeur encoding.
    J'obtiens : <?xml version="1.0" encoding="utf-8"?>
    L'application tiers du coup supprime le contenu de number lors du lancement et n'arrive pas à lire le fichier xml.

    Mon code :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim xEle As XElement = XElement.Load("test.xml")
            Dim ip = xEle.Elements("configuration").Elements("ip").ToList()
            Dim host = xEle.Elements("configuration").Elements("host").ToList()
            For Each IPXml As XElement In ip
                IPXml.ReplaceNodes("")
            Next IPXml
            For Each HOSTXml As XElement In host
                HOSTXml.ReplaceNodes("serveur")
            Next HOSTXml
            xEle.Save("test.xml")

    Je remercie ceux ou celle qui pourront m'apporter leur aide par avance.
    Mike

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Essaies de charger ton document à partir de la classe XDocument et non XElement comme suit :
    Code VB.Net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim doc as XDocument = XDocument.Load("test.xml")
    Dim ip = doc.Root.Elements("configuration").Elements("ip").ToList()
    Dim host = doc.Root.Elements("configuration").Elements("host").ToList()
    For Each IPXml As XElement In ip
         IPXml.ReplaceNodes("")
    Next IPXml
    For Each HOSTXml As XElement In host
         HOSTXml.ReplaceNodes("serveur")
    Next HOSTXml
     
    doc.Save("test.xml")

    Si ça ne marche toujours pas alors avant l'exécution de la ligne doc.Save("test.xml") tu ajoutes l'instruction suivante doc.Document.Declaration.Encoding = "ISO-8859-1" pour forcer l'encodage.

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

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Merci ça fonctionne.

    ça faisait trois semaines que j'essayais en vain de trouver une réponse sur internet.

    J'ai n'ai pas eu besoin d'utiliser le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    doc.Document.Declaration.Encoding = "ISO-8859-1"
    Mais je l'ai conservé en la désactivant.

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

Discussions similaires

  1. modification d'un fichier xml
    Par DanielW33 dans le forum ANT
    Réponses: 1
    Dernier message: 09/10/2006, 16h38
  2. [DOM XML] Modification d'un fichier XML en php
    Par aldo-tlse dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 07/07/2006, 18h28
  3. [xml/xsl/xhtml] modification d'un fichier XML
    Par florent_de_brest dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 25/05/2006, 20h43
  4. [c#] Modification d'un fichier XML
    Par topolino dans le forum Windows Forms
    Réponses: 13
    Dernier message: 21/03/2006, 14h51
  5. [DOM] Modification d'un fichier XML
    Par nana1 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 21/11/2005, 23h22

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