2009-08-25 71 views

回答

4

你最好打賭是使用XmlTextWriter類。

這裏有一個非常簡單的例子:

var writer = new XmlTextWriter("Foo.xml", Encoding.UTF8); 
writer.WriteStartDocument(); 
writer.WriteStartElement("Foo"); 
writer.WriteAttributeString("hello", "world"); 
writer.WriteEndElement(); 
writer.WriteEndDocument(); 
writer.Close(); 

這會給你:

<?xml version="1.0" encoding="utf-8"?> 
<Foo hello="world" /> 
1

這裏有一個代碼段工程:

XmlTextWriter myXW = new XmlTextWriter(@"C:\NewXmlFile.xml", Encoding.UTF8) 
myXW.WriteStartDocument(); 
myXW.WriteStartElement("Customers"); 
string strConn = myConnectionString; 
OleDbConnection myConn = new OleDbConnection(strConn); 
myConn.Open(); 
OleDbCommand myCMD = new OleDbCommand("select * from customers", myConn); 
OleDbDataReader myRdr = myCMD.ExecuteReader(); 
while (myRdr.Read()) 
{ 
    myXW.WriteStartElement("Customer"); 
    myXW.WriteAttributeString("id", myRdr.GetString(0)); 
    myXW.WriteElementString("companyname", myRdr.GetString(1)); 
    myXW.WriteElementString("contactname", myRdr.GetString(2)); 
    myXW.WriteElementString("contactname", myRdr.GetString(3)); 
    myXW.WriteElementString("address", myRdr.GetString(4)); 
    myXW.WriteElementString("city", myRdr.GetString(5)); 
    myXW.WriteElementString("country", myRdr.GetString(8)); 
    myXW.WriteElementString("phone", myRdr.GetString(9)); 
    myXW.WriteElementString("fax", myRdr.GetString(10)); 
    myXW.WriteEndElement(); 
} 
myXW.WriteEndElement(); 
myXW.WriteEndDocument(); 
myXW.Flush(); 
myXW.Close(); 
+0

像例子...但拉取出不必要的代碼以使其更具可讀性。 – 2009-08-25 19:18:26

+0

@Justin Neissner:你的意思是ADO的東西?你認爲這會增加不必要的噪音?我希望它會增加上下文。我願意接受反饋。 – Rap 2009-08-25 19:23:03