Microsoft Dot Net ramen erbjuder flera alternativ för behandling och manipulera XML , Extensible Markup Language . Av alla alternativ erbjuder " XMLDocument " objektet får större flexibilitet eftersom den laddar in data i minnet , erbjuder en mängd olika navigerings-och sökfunktioner , gör att data kan läggas till, ändras eller tas bort slumpmässigt och är tillgänglig i alla versioner av Dot NET Framework . Använd XMLDocument att skapa ett enkelt program för att lägga till några punkter till en XML inköpslista
Du behöver : .
Microsoft Visual Studio eller Visual C # Express 2005 eller senare .
1 .
Öppna Microsoft Visual Studio eller Visual C # Express ( 2005 eller senare ) och skapa en ny C # Console . Namnge den " xmlSample " och spara den i mappen . "c : . \ xmlSample "
2
Lägg till en XML -fil till projektet och kalla den " file1. xml . " Sätt in följande data i filen :
- Bröd
- Ägg
- Mjölk
Spara och stäng XML -fil .
3 .
När du stängt ner XML-filen # C programmet visas igen . På toppen av programmet under listan med hjälp av uttalanden , lägga till en hänvisning till System. Xml namnområdet .
med System. Xml .
4
Inne huvudsakliga funktion , skapa en ny XMLDocument objekt som kallas "Doc ". Använd lasten metoden att läsa in XML -fil till detta objekt .
void main (String [ ] args )
{
XMLDocument doc=new XMLDocument () ;
försöka
{ doc . Last ( "c : \ \ xmlSample \ \ file1. xml " ) ;
}
catch ( Exception ex )
{ Console. WriteLine ( "Kan inte öppna XML -fil " + ex. Message ) ;
återvända ,
}
När filen laddas in i doc objektet , lagras den i ett träd datastruktur . I detta fall är rotnoden "
" och det innehåller tre barn delar som var namnet " - . " I mer komplexa XML- filer , kan barn elementen har sina egna sub-child-element och detta kan fortsätta på flera nivåer .
5 .
Leta rotnoden " "med " DocumentElement " egendom .
XMLNode rootNode=doc. DocumentElement .
6
Skapa ett nytt objekt nod och lägg det på framsidan av förteckningen
XMLNode . node1=doc. CreateElement ( " post " ) ;
node1. AppendChild ( doc. CreateTextNode ( " Äpplen "));
rootNode. InsertBefore ( node1 , rootNode. FirstChild ) ,
ett nytt XMLNode kallas " node1 " skapas med etiketten namnet " - . " Text inom ett element representeras som ett barn nod av typen " xmlTextNode , "så att " AppendChild " metoden används för att lägga till en ny xmlTextNode innehåller " Äpplen " i elementet . Efter att den nya noden skapas , är det in på den början av listan med " InsertBefore "metoden .
7 .
Sätt in en annan post i slutet av listan .
XMLNode node2=doc. CreateElement ( " post " ) ;
node2. AppendChild ( doc. CreateTextNode ( " Pasta "));
rootNode . InsertAfter ( node2 , rootNode. LastChild ) ,
här koden liknar koden ovan men använder " InsertAfter " metoden och " lastChild " för att infoga posten " Pasta " i slutet av listan .
8 .
Spara data till en ny fil med " Spara " -metoden för XMLDocument .
försöka
{ doc. Save ( " c : \ \ xmlSample \ \ file2. xml " ) ;
}
catch ( Exception ex )
{ Console. WriteLine ( " Kan inte spara filen " + ex . Meddelande) ,
}
9
Se filen " c : \ xmlSample \ file2. xml " för att se resultatet
- Äpplen
- Bröd
- Ägg
- Mjölk
- Pasta
tips och varningar
Observera att nya XML -noder skapas använda metoder för att XMLDocument , inte använda nya operatören .