Xml基础

1、
XmlReader可以对Xml文档进行快速的、只向前的只读访问;可以使用两种方式来创建XmlReader对象:一种是使用其子类如XmlTextReader和XmlNodeReader类,第二种是使用XmlReader类的Create方法创建对象。
实例:
aspx的设计:
<body>
<form id="form1" runat="server">
<div>
<a href="books.xml">books.xml</a>
</div>
</form>
</body>
aspx.cs的设计
public partial class XMLReader1 : System.Web.UI.Page
{
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 + "本书");
}
}
2、
XmlWriter的工作方式类似于XmlReader;提供一种快速、非缓存和只进的方式来生成包含 XML 数据的流或文件
aspx的设计:
<body>
<form id="form1" runat="server">
<div>

<asp:Button ID="Button1" runat="server" οnclick="Button1_Click"
Text="WriteXml" />

</div>
</form>
</body>
aspx.cs的设计:

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");
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值