这妞不错!

会有那么一天...

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

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

posted on 2011-05-19 14:28  这妞不错  阅读(359)  评论(0)    收藏  举报