<form id="form1" runat="server">
<div>
<a href="books.xml">books.xml</a>
</div>
</form>
</body>
{
protected void Page_Load(object sender, EventArgs e)
{
XmlReaderSettings settings=new XmlReaderSettings();
settings.IgnoreComments=true;//是否忽视注释
settings.IgnoreWhitespace=true;//是否忽视无关紧要的空白
int booknum = 0;
using (XmlReader reader = XmlReader.Create(Server.MapPath("books.xml"), settings))//如果见到需要路径的地方,如果不是url,必须给一个实际路径(不能写虚拟路径)
{
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
//相当于:cmd.CommandType=CommandType.Text
{
if (reader.LocalName == "book")
{
booknum++;
}
}
}
}
Response.Write("一共找到了" + booknum + "本书");
}
}
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" οnclick="Button1_Click"
Text="WriteXml" />
</div>
</form>
</body>
protected void Button1_Click(object sender, EventArgs e)
{
XmlWriterSettings settings=new XmlWriterSettings();
settings.Encoding=System.Text.Encoding.UTF8;//使用的文本编辑的内容
settings.Indent=true;//是否缩进
using (XmlWriter write = XmlWriter.Create(Server.MapPath("newbook.xml"), settings))
{
write.WriteStartDocument();//表示开始写了:写头文件
write.WriteStartElement("books");//表示开始写里面的元素了,写根节点,books的开始
//第一本书
write.WriteStartElement("book");//表示开始写根节点里面的书了,book的开始
write.WriteStartAttribute("id");//给book添加属性,属性名为id
write.WriteValue("1");//设置属性id的值为1
write.WriteEndAttribute();//结束属性值的更改
write.WriteStartElement("author");//表示写里面的内容了,author的开始
write.WriteString("john");//作者名称
write.WriteEndElement();//表示作者名称的结束
write.WriteEndElement();//book的结束
//第二本书
write.WriteStartElement("book");//表示开始写根节点里面的书了,book的开始
write.WriteStartElement("publisher");//表示写里面的内容了,author的开始
write.WriteString("清华大学出版社");//作者名称
write.WriteEndElement();//表示作者名称的结束
write.WriteEndElement();//book的结束
write.WriteEndElement();//books的结束
}
this.Response.Write("ok");
}