您的位置:首页 > 其它

使用XmlTextWriter与XmlTextReader访问创建和读取XML文件

2008-07-08 06:58 621 查看
using System;
using System.Text;
using System.Windows.Forms;
using System.Xml;

namespace XMLDemo
{
    public partial class FrmSAX : Form
    {
        public FrmSAX()
        {
            InitializeComponent();
        }

        private void btnWrite_Click(object sender, EventArgs e)
        {
            string fileName = "Books.xml";
            XmlTextWriter writer = null;

            try
            {
                writer = new XmlTextWriter(fileName, Encoding.UTF8);

                writer.Formatting = Formatting.Indented;
                writer.Indentation = 4;

                writer.WriteStartDocument();

                writer.WriteStartElement("Books");

                writer.WriteStartElement("Book");
                writer.WriteElementString("Title", "Window Form");
                writer.WriteElementString("ISBN", "111111");
                writer.WriteElementString("Author", "amandag");
                writer.WriteStartElement("Price");
                writer.WriteAttributeString("Unit", "¥");
                writer.WriteValue("128.00");
                writer.WriteEndElement();
                writer.WriteEndElement();

                writer.WriteStartElement("Book");
                writer.WriteElementString("Title", "ASP.NET");
                writer.WriteElementString("ISBN", "222222");
                writer.WriteElementString("Author", "moon");
                writer.WriteStartElement("Price");
                writer.WriteAttributeString("Unit", "{1}quot;);
                writer.WriteValue("111.00");
                writer.WriteEndElement();
                writer.WriteEndElement();

                writer.WriteEndElement();

                writer.WriteEndDocument();
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
                return;
            }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                }
            }

            MessageBox.Show("OK");
        }

        private void btnRead_Click(object sender, EventArgs e)
        {
            string fileName = "Books.xml";
            XmlTextReader reader = new XmlTextReader(fileName);
            StringBuilder result = new StringBuilder();
            while (reader.Read())
            {
                if (reader.NodeType == XmlNodeType.Element)
                {
                    if (reader.Name.Equals("Price"))
                    {
                        result.Append(reader.GetAttribute("Unit"));
                    }
                }
            }
            MessageBox.Show(result.ToString());
        }
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: