XML傳統的創建:
傳統的創建主要是依據XmlDocument的對象展開的,通過XmlDocument對象可以創建元素(XmlElement)、屬性(XmlAttribute)以及文本節點(CreateTextNode)
具體實例:
XML:
1-> 創建XmlDocument和描述,並添加描述:
XmlDocument xml=new XmlDocument();
XmlDeclaration xmldec = xmlDoc.CreateXmlDeclaration("1.0", "gb2312", null);
xml.AppendChild(xmldec);
2->創建根節點,並添加到xml中,根節點只能有一個
XmlElement root = xml.CreateElement("root");
xml.AppendChild(root);
3->准備數據,循環該數據集合,並創建XmlElement元素節點及相關屬相
List<Student> list = new List<Student>(){
new Student(){Name="張三",Gender="男",Age=17},
new Student(){Name="李四",Gender="男",Age=21},
new Student(){Name="王五",Gender="男",Age=19}
};
//循法集合中的對象
for (int i = 0; i < list.Count(); i++)
{
//創建stu節點並添加屬性id
XmlElement stu = xml.CreateElement("Student");//用XmlDocument的實例xml創建元素
XmlAttribute id = xml.CreateAttribute("id");//用XmlDocument的實例xml創建屬性
id.Value = "00" + (i+1);//為屬性賦值
stu.Attributes.Append(id);//將屬性id添加到stu的屬性集合中去
//創建name節點並復制。然後追加到stu節點下
XmlElement name = xml.CreateElement("Name");//用XmlDocument的實例xml創建元素
name.AppendChild(xml.CreateTextNode(list[i].Name));//為元素創建TextNode,並賦值
stu.AppendChild(name); //將name節點添加到stu節點下
//創建age 節點並復制。然後追加到stu節點下
XmlElement age = xml.CreateElement("Age");
age.AppendChild(xml.CreateTextNode(list[i].Age.ToString()));
stu.AppendChild(age);
//創建gender 節點並復制。然後追加到stu節點下
XmlElement gender = xml.CreateElement("Gender");
gender.AppendChild(xml.CreateTextNode(list[i].Gender));
stu.AppendChild(gender);
//將stu節點追加到跟節點root下
root.AppendChild(stu);
}
4->保存XML文件
xml.Save("xxx.xml");
5->最終生成的XML
<?xml version="1.0" encoding="gb2312"?>
<root>
<Student id="001">
<Name>張三</Name>
<Age>17</Age>
<Gender>男</Gender>
</Student>
<Student id="002">
<Name>李四</Name>
<Age>21</Age>
<Gender>男</Gender>
</Student>
<Student id="003">
Name>王五</Name>
<Age>19</Age>
<Gender>男</Gender>
</Student>
</root>