最近要制作一个节目列表,用数据库感觉太繁琐,于是学习了一下xml文件的读写,在此做个小结,便于以后查阅
一个xml文件中,包含有若干个节点,每个节点可以有属性和子结点,总结的操作如下:
1、命名空间
xml的操作包含在System.Xml命名空间中,需要添加如下语句
using System.Xml;
2、创建空的xml文件
XmlTextWriter xmlWriter;
string strFilename = Application.StartupPath + "\\data1.xml";
xmlWriter = new XmlTextWriter(strFilename, Encoding.Default);//创建一个xml文档
xmlWriter.Formatting = Formatting.Indented;
xmlWriter.WriteStartDocument();
//在此可以添加增加结点的代码,比如第3步的代码
xmlWriter.Close();
这里的WriteStartDocument用于增加xml文件的版本说明,这句不是xml文件的结点,所以没有结束标签标识
3、创建xml时,增加结点
xmlWriter.WriteStartElement("programList");
xmlWriter.WriteStartElement("program");
xmlWriter.WriteAttributeString("name", "节目1");
xmlWriter.WriteString("血色浪漫");
注意这里通过WriteStartElement可以增加结点,通过WriteAttributeString给当前的结点增加属性(可以有若干个),通过WriteString给结点增加文本值(可以有若干个)。
4、关闭结点
xmlWriter.WriteEndElement();
注意第3步的操作并未增加关闭结点的操作,但是当把第3步的代码放入第2步的代码时,仍然可以生成xml文件。这里xml可以自动关闭未关闭的标签。在当前标签未手动关闭时,通过WriteStartElement再次添加的结点即为子结点。
如果需要添加并列结点,则需要手动添加匹配数目的WriteEndElement用于关闭结点
这里的操作是新建xml文档,所以使用了xmlWriter.