Csharp/C Sharp/XML/XML Write — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
|
Текущая версия на 14:38, 26 мая 2010
Содержание
Create XML document with XmlWriter
<source lang="csharp"> using System; using System.Xml; using System.IO; using System.Text; class MainClass {
private static void Main() { FileStream fs = new FileStream("products.xml", FileMode.Create); XmlWriter w = XmlWriter.Create(fs); w.WriteStartDocument(); w.WriteStartElement("products"); w.WriteStartElement ("product"); w.WriteAttributeString("id", "1001"); w.WriteElementString("productName", "Gourmet Coffee"); w.WriteElementString("productPrice", "0.99"); w.WriteEndElement(); w.WriteStartElement("product"); w.WriteAttributeString("id", "1002"); w.WriteElementString("productName", "Tea Pot"); w.WriteElementString("productPrice", "12.99"); w.WriteEndElement(); w.WriteEndElement(); w.WriteEndDocument(); w.Flush(); fs.Close(); }
}
</source>
Illustrates the XmlTextWriter class
<source lang="csharp"> /* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110
- /
/*
Example20_1.cs illustrates the XmlTextWriter class
- /
using System; using System.Xml; public class Example20_1 {
public static void Main() { // use the XmlTextWriter to open a new XML file XmlTextWriter xw = new XmlTextWriter(@"Cust4.xml", System.Text.Encoding.UTF8); // write the document declaration xw.WriteStartDocument(); // write the first element xw.WriteStartElement("NewDataSet"); // write the first customer xw.WriteStartElement("Customers"); xw.WriteElementString("CustomerID", "ALFKI"); xw.WriteElementString("CompanyName", "Alfreds Futterkiste"); xw.WriteElementString("ContactName", "Maria Anders"); xw.WriteElementString("ContactTitle", "Sales Representative"); xw.WriteElementString("Address", "Obere Str. 57"); xw.WriteElementString("City", "Berlin"); xw.WriteElementString("PostalCode", "12209"); xw.WriteElementString("Country", "Germany"); xw.WriteElementString("Phone", "030-0074321"); xw.WriteElementString("Fax", "030-0076545"); xw.WriteEndElement(); // write the second customer xw.WriteStartElement("Customers"); xw.WriteElementString("CustomerID", "BONAPP"); xw.WriteElementString("CompanyName", "Bon App""); xw.WriteElementString("ContactName", "Laurence Lebihan"); xw.WriteElementString("ContactTitle", "Owner"); xw.WriteElementString("Address", "12, rue des Bouchers"); xw.WriteElementString("City", "Marseille"); xw.WriteElementString("PostalCode", "13008"); xw.WriteElementString("Country", "France"); xw.WriteElementString("Phone", "91.24.45.40"); xw.WriteElementString("Fax", "91.24.45.41"); xw.WriteEndElement(); // end the NewDataSet element xw.WriteEndElement(); // end the document xw.WriteEndDocument(); // flush and close xw.Flush(); xw.Close(); }
} /**/
</source>
Read and Write XML Without Loading an Entire Document into Memory
<source lang="csharp"> using System; using System.Xml; using System.IO; using System.Text; public class ReadWriteXml {
private static void Main() { FileStream fs = new FileStream("products.xml", FileMode.Create); XmlTextWriter w = new XmlTextWriter(fs, Encoding.UTF8); w.WriteStartDocument(); w.WriteStartElement("products"); w.WriteStartElement("product"); w.WriteAttributeString("id", "01"); w.WriteElementString("name", "C#"); w.WriteElementString("price", "0.99"); w.WriteEndElement(); w.WriteEndElement(); w.WriteEndDocument(); w.Flush(); fs.Close(); Console.WriteLine("Document created."); fs = new FileStream("products.xml", FileMode.Open); XmlTextReader r = new XmlTextReader(fs); while (r.Read()) { if (r.NodeType == XmlNodeType.Element) { Console.WriteLine("<" + r.Name + ">"); if (r.HasAttributes) { for (int i = 0; i < r.AttributeCount; i++) { Console.WriteLine("\tATTRIBUTE: " + r.GetAttribute(i)); } } }else if (r.NodeType == XmlNodeType.Text) { Console.WriteLine("\tVALUE: " + r.Value); } } }
}
</source>
Write To XML File
<source lang="csharp"> /*
* C# Programmers Pocket Consultant * Author: Gregory S. MacBeth * Email: gmacbeth@comporium.net * Create Date: June 27, 2003 * Last Modified Date: * Version: 1 */
using System; using System.IO; using System.Xml; using System.Xml.Schema;
namespace Client.Chapter_22___XML {
public class WriteToXMLFile { static void Main(string[] args) { string document = "newbooks.xml"; XmlTextWriter myXmlTextWriter = null; XmlTextReader myXmlTextReader = null; myXmlTextWriter = new XmlTextWriter(args[1], null); myXmlTextWriter.Formatting = Formatting.Indented; myXmlTextWriter.WriteStartDocument(false); myXmlTextWriter.WriteDocType("bookstore", null, "books.dtd", null); myXmlTextWriter.WriteComment("This file represents another fragment of a book store inventory database"); myXmlTextWriter.WriteStartElement("bookstore"); myXmlTextWriter.WriteStartElement("book", null); myXmlTextWriter.WriteAttributeString("genre", "autobiography"); myXmlTextWriter.WriteAttributeString("publicationdate", "1979"); myXmlTextWriter.WriteAttributeString("ISBN", "0-7356-0562-9"); myXmlTextWriter.WriteElementString("title", null, "The Autobiography of Mark Twain"); myXmlTextWriter.WriteStartElement("Author", null); myXmlTextWriter.WriteElementString("first-name", "Mark"); myXmlTextWriter.WriteElementString("last-name", "Twain"); myXmlTextWriter.WriteEndElement(); myXmlTextWriter.WriteElementString("price", "7.99"); myXmlTextWriter.WriteEndElement(); myXmlTextWriter.WriteEndElement(); //Write the XML to file and close the writer myXmlTextWriter.Flush(); myXmlTextWriter.Close(); if (myXmlTextWriter != null) myXmlTextWriter.Close(); } }
}
</source>
Write XML document to console
<source lang="csharp"> using System; using System.Xml; public class HelloXML {
public static void Main(string [] args) { XmlTextWriter writer = new XmlTextWriter(Console.Out); writer.WriteStartDocument( ); writer.WriteElementString("www.nfex.ru", "XML"); writer.WriteEndDocument( ); writer.Close( ); }
}
</source>
Writing XML with the XmlWriter Class
<source lang="csharp"> using System; using System.IO; using System.Xml;
class MainClass {
static public void Main() { XmlTextWriter XmlWriter = new XmlTextWriter(Console.Out); XmlWriter.WriteStartDocument(); XmlWriter.WriteComment("This is the comments."); XmlWriter.WriteStartElement("BOOK"); XmlWriter.WriteElementString("TITLE", "this is the title."); XmlWriter.WriteElementString("AUTHOR", "I am the author."); XmlWriter.WriteElementString("PUBLISHER", "who is the publisher"); XmlWriter.WriteEndElement(); XmlWriter.WriteEndDocument(); }
}
</source>
XML Write: comment, start element, end element, attribute
<source lang="csharp"> using System; using System.Xml; public class TestXMLWriter{
static void Main(string[] args) { XmlTextWriter writer = new XmlTextWriter("test.xml", new System.Text.ASCIIEncoding()); writer.Formatting = Formatting.Indented; writer.Indentation = 4; writer.WriteStartDocument(); writer.WriteComment("Comment"); writer.WriteStartElement("ElementName", "myns"); writer.WriteStartAttribute("prefix", "attrName", "myns"); writer.WriteEndAttribute(); writer.WriteElementString("ElementName", "myns", "value"); writer.WriteEndElement(); writer.WriteEndDocument(); writer.Flush(); writer.Close(); }
}
</source>