Avatar billede tuba Nybegynder
28. februar 2005 - 18:30 Der er 2 kommentarer

kopiere xml fra et dokument over i et andet

problemstilling:
jeg har et XpathDocument med xml. Fra dette dokument vil jeg gerne have kopieret en bestemt node (som jeg selv bestemmer, gerne ved hjælp af xpath) over i et andet XpathDocument dokument. hvordan gør jeg det ?
Avatar billede arne_v Ekspert
28. februar 2005 - 19:13 #1
Jeg troede at XPathDocument var readonly ?

Et tigtigt XmLDocument har en ImportNode metode.
Avatar billede smsng Nybegynder
19. august 2005 - 15:38 #2
XPathNavigator nav;
XPathDocument doc;

XPathNodeIterator nodeName;
XPathNodeIterator nodePrice;

string nodename;
string nodeprice;

doc = new XPathDocument(//stien til filen);
nav = doc.CreateNavigator();

nodename = "//book/name";
nodeprice = "//book/price";

hvis din xml fil fx. ser således ud
<?xml version="1.0" encoding="utf-8" ?>
<book>
  <name>Oliver</name>
  <price>20</price>
</book>

nodeName = nav.Select(nodename);
nodePrice = nav.Select(nodeprice);

string newfile="C:\\NewFile.xml";
XmlTextWriter tw = new XmlTextWriter(newfile, null);

tw.Formatting = Formatting.Indented;
tw.WriteProcessingInstruction("xml", "version='1.0' encoding='UTF-8'");

nodename = nodeName.Current.Value.ToString();
nodeprice = nodePrice.Current.Value.ToString();

tw.WriteStartElement("book");
tw.WriteElementString("name", nodename);
tw.WriteElementString("price", nodeprice");
tw.WriteEndElement();
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester