j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me
dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le
libérer afin de l'enregistrer:
XmlDocument doc = new XmlDocument();
doc.Load("C:\\doc.xml");
XmlElement elem = doc.CreateElement("serveur");
XmlAttribute valueAttribute = doc.CreateAttribute("value");
valueAttribute.Value = ("toto");
elem.Attributes.Append(valueAttribute);
doc.DocumentElement.AppendChild(elem);
doc.Save("C:\\liste.xml");
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Lemming
Bonjour,
Ouvre tu le fichier à d'autres endroits dans ton programme? Est il ouvert dans une autre application (bloc-notes ou autre)?
Normalement, XmlDocument.Load ne "se réserve" pas le fichier (il l'ouvre, le charge, et le ferme).
Luc
"Nicolas" a écrit :
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le libérer afin de l'enregistrer: XmlDocument doc = new XmlDocument(); doc.Load("C:doc.xml"); XmlElement elem = doc.CreateElement("serveur"); XmlAttribute valueAttribute = doc.CreateAttribute("value"); valueAttribute.Value = ("toto"); elem.Attributes.Append(valueAttribute); doc.DocumentElement.AppendChild(elem); doc.Save("C:liste.xml");
Comment faire? Merci
Bonjour,
Ouvre tu le fichier à d'autres endroits dans ton programme? Est il ouvert
dans une autre application (bloc-notes ou autre)?
Normalement, XmlDocument.Load ne "se réserve" pas le fichier (il l'ouvre, le
charge, et le ferme).
Luc
"Nicolas" a écrit :
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me
dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le
libérer afin de l'enregistrer:
XmlDocument doc = new XmlDocument();
doc.Load("C:\doc.xml");
XmlElement elem = doc.CreateElement("serveur");
XmlAttribute valueAttribute = doc.CreateAttribute("value");
valueAttribute.Value = ("toto");
elem.Attributes.Append(valueAttribute);
doc.DocumentElement.AppendChild(elem);
doc.Save("C:\liste.xml");
Ouvre tu le fichier à d'autres endroits dans ton programme? Est il ouvert dans une autre application (bloc-notes ou autre)?
Normalement, XmlDocument.Load ne "se réserve" pas le fichier (il l'ouvre, le charge, et le ferme).
Luc
"Nicolas" a écrit :
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le libérer afin de l'enregistrer: XmlDocument doc = new XmlDocument(); doc.Load("C:doc.xml"); XmlElement elem = doc.CreateElement("serveur"); XmlAttribute valueAttribute = doc.CreateAttribute("value"); valueAttribute.Value = ("toto"); elem.Attributes.Append(valueAttribute); doc.DocumentElement.AppendChild(elem); doc.Save("C:liste.xml");
Le Fri, 17 Aug 2007 09:06:01 +0200, Nicolas a écrit:
Oups, j'ai répondu trop vite, il me sert ailleur dans mon prog pour charger des listes déroulante.
Comment faire pour pouvoir m'en servir à plusieurs endroits dans mon programme?
Merci
Utilisez vous des StreamReader sur ce fichier ?
Cordialement
-- Gilles TOURREAU
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Jean BONBEUR
si ton code est bien celui utilisé, ça doit passer. sauf si ton fichier a des attributs ou des droits insuffisants pour la modification. ton fichier peut être ouvert par un autre programme à ce moment, mais c'est moins probable, et en général, des editeurs, meme petits, n'accaparent pas le fichier... à tout hasard, il n'y a pas deux threads qui appellent en même temps le doc.Save ?
peux tu preciser l'exception ?
cordialement
"Nicolas" a écrit dans le message de news:
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le libérer afin de l'enregistrer: XmlDocument doc = new XmlDocument(); doc.Load("C:doc.xml"); XmlElement elem = doc.CreateElement("serveur"); XmlAttribute valueAttribute = doc.CreateAttribute("value"); valueAttribute.Value = ("toto"); elem.Attributes.Append(valueAttribute); doc.DocumentElement.AppendChild(elem); doc.Save("C:liste.xml");
Comment faire? Merci
si ton code est bien celui utilisé, ça doit passer.
sauf si ton fichier a des attributs ou des droits insuffisants pour la
modification.
ton fichier peut être ouvert par un autre programme à ce moment, mais c'est
moins probable, et en général, des editeurs, meme petits, n'accaparent pas
le fichier...
à tout hasard, il n'y a pas deux threads qui appellent en même temps le
doc.Save ?
peux tu preciser l'exception ?
cordialement
"Nicolas" <Nicolas@discussions.microsoft.com> a écrit dans le message de
news: D6196186-90A1-4D70-BEFF-FD96A272303A@microsoft.com...
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me
dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le
libérer afin de l'enregistrer:
XmlDocument doc = new XmlDocument();
doc.Load("C:\doc.xml");
XmlElement elem = doc.CreateElement("serveur");
XmlAttribute valueAttribute = doc.CreateAttribute("value");
valueAttribute.Value = ("toto");
elem.Attributes.Append(valueAttribute);
doc.DocumentElement.AppendChild(elem);
doc.Save("C:\liste.xml");
si ton code est bien celui utilisé, ça doit passer. sauf si ton fichier a des attributs ou des droits insuffisants pour la modification. ton fichier peut être ouvert par un autre programme à ce moment, mais c'est moins probable, et en général, des editeurs, meme petits, n'accaparent pas le fichier... à tout hasard, il n'y a pas deux threads qui appellent en même temps le doc.Save ?
peux tu preciser l'exception ?
cordialement
"Nicolas" a écrit dans le message de news:
Bonjour,
j'ai un problème avec l'enregistrement d'un doc XML que je modifie, il me dit qu'il est déjà en cours d'utilisation, et je ne sais pas comment le libérer afin de l'enregistrer: XmlDocument doc = new XmlDocument(); doc.Load("C:doc.xml"); XmlElement elem = doc.CreateElement("serveur"); XmlAttribute valueAttribute = doc.CreateAttribute("value"); valueAttribute.Value = ("toto"); elem.Attributes.Append(valueAttribute); doc.DocumentElement.AppendChild(elem); doc.Save("C:liste.xml");