protected void Page_Load(object sender, EventArgs e)
{
CreateXML();//创建
XmlReader();//读取
}
//创建XML文档
public void CreateXML()
{
//创建XmlTextWriter类的实例对象
XmlTextWriter textWriter = new XmlTextWriter("D:\\introduce1.xml", null);
//设置格式,对元素内容进行缩进
textWriter.Formatting = Formatting.Indented;
//书写版本为“1.0”的XML声明
textWriter.WriteStartDocument();
//写出在名称和文本之间带有空格的处理指令
string PItext = "type = 'text/xsl' href = 'book.xsl' ";
textWriter.WriteProcessingInstruction("xml-stylesheet", PItext);
//增加指定名称和可选属性的DocType声明
textWriter.WriteDocType("学生", null, null, "<!ENTITY sex '男'>");
//增加注释
textWriter.WriteComment("XML注释");
//开始创建元素
textWriter.WriteStartElement("学生");
//创建属性
textWriter.WriteAttributeString("专业", "计算机");
textWriter.WriteAttributeString("日期", "2011-05-19");
//创建元素
textWriter.WriteElementString("姓名", "好大一棵草");//创建元素1
textWriter.WriteStartElement("性别"); //创建元素
textWriter.WriteEntityRef("sex"); //创建对上面实体的引用,显示时自动替换为:男
textWriter.WriteEndElement();
textWriter.WriteElementString("年龄", "24");
//写CData信息
textWriter.WriteCData("年龄大了,该找女朋友了!");
//关闭根
textWriter.WriteEndElement();
textWriter.WriteEndDocument();
//最后写XML文件,并关闭textWriter
textWriter.Flush();
textWriter.Close();
Response.Write("写入成功");
}
//读取XML文档
public void XmlReader()
{
//创建一个XmlTextReader类的对象并调用Read方法来读取文件
XmlTextReader textReader = new XmlTextReader("D:\\introduce1.xml");
//节点非空这执行循环体
textReader.Read();
while (textReader.Read())
{
}
//得到当前节点类型,执行相应处理
XmlNodeType nType = textReader.NodeType;
switch (nType)
{
case XmlNodeType.XmlDeclaration:
break;
case XmlNodeType.Comment:
break;
case XmlNodeType.Attribute:
break;
case XmlNodeType.Element:
break;
case XmlNodeType.DocumentType:
break;
case XmlNodeType.Whitespace:
break;
}
//读取该元素的各种属性值
textReader.MoveToElement();
Response.Write("<br /><br />" + "XmlTextReader读取XML文档:");
Response.Write("<br />" + "Name:" + textReader.Name);
Response.Write("<br />" + "Base URI:" + textReader.BaseURI);
Response.Write("<br />" + "Local Name:" + textReader.LocalName);
Response.Write("<br />" + "Attributu Count:" + textReader.AttributeCount.ToString());
Response.Write("<br />" + "Delth:" + textReader.Depth.ToString());
Response.Write("<br />" + "Line Number:" + textReader.LocalName.ToString());
Response.Write("<br />" + "Node Type:" + textReader.NodeType.ToString());
Response.Write("<br />" + "Attribute Count:" + textReader.Value.ToString());
}

浙公网安备 33010602011771号