XMl文档1

来源:互联网 发布:在线生成数据统计图表 编辑:程序博客网 时间:2024/04/30 14:20

1.在后台写入一个xml'文本:

 XmlWriterSettings settings = new XmlWriterSettings();
        settings.Encoding = System.Text.Encoding.UTF8;
        settings.Indent = true;
        using (XmlWriter writer=XmlWriter.Create(Server.MapPath("newbooks.xml"),settings))
        { writer.WriteStartDocument();
            writer.WriteStartElement("books");
            writer.WriteStartElement("book");writer.WriteStartElement("author");
            writer.WriteString("john");
            writer.WriteEndElement();writer.WriteEndElement();
            writer.WriteEndElement();}

2.xml文档的查询:

1>.XmlNode node = xdoc.DocumentElement.SelectSingleNode("book[name='" + this.DropDownList1.Text + "']");//根据特定的Xpath表达式,在文档中查找第一个匹配的节点
        #region 方法一:遍历book节点的子节点集合
        foreach (XmlNode item in node.ChildNodes)
        {
            if (item.LocalName == "author")
                this.txtauthor.Text = item.InnerText;
            if (item.LocalName == "date")
                this.txtdate.Text = item.InnerText;
            if (item.LocalName == "isbn")
                this.txtisbn.Text = item.InnerText;
            if (item.LocalName == "price")
                this.txtprice.Text = item.InnerText;
            if (item.LocalName == "publisher")
                this.txtpub.Text = item.InnerText;
        }

 #endregion

2>.#region 方法一:准确查找节点
        //this.txtauthor.Text = node.SelectSingleNode("author").InnerText;
        //this.txtdate.Text = node.SelectSingleNode("date").InnerText;
        //this.txtisbn.Text = node.SelectSingleNode("isbn").InnerText;
        //this.txtprice.Text = node.SelectSingleNode("price").InnerText;
        //this.txtpub.Text = node.SelectSingleNode("publisher").InnerText;
        #endregion

3.xml文档的删除:

XmlNode node = xdoc.DocumentElement.SelectSingleNode("book[name='" + this.DropDownList1.Text + "']");
        if (node!=null)
        {
            xdoc.DocumentElement.RemoveChild(node);
            this.DropDownList1.Items.RemoveAt(this.DropDownList1.SelectedIndex);
            xdoc.Save(Server.MapPath("books.xml"));
            this.Response.Write("delete ok!");
        }