C#温故而知新学习系列之XML编程—3-Xml写入器XmlWriter类
来源:互联网 发布:nginx 配置根目录 编辑:程序博客网 时间:2024/05/28 06:08
与XmlReader类相对应,.NETFramework也提供了一个以快速的,非缓存的,只向前的,动态写入XML数据的类即XmlWriter类,可以将XmlWriter类理解为与XmlReader类对等的类。
写入XML文档的步骤
为了写入属性,元素,需要调用一个WriteStrat()方法和WriteEnd()方法,在使用XmlWriter类的时候并不是简单的写入一个元素,需要先写入开始标签,然后写入内容,最后写入结束标签,因此必须要跟踪在XML文档中所处的位置,以保证在正确的时间调用正确的结束方法。
1-使用XmlReader类的Create()方法创建该类的实例,并将XML文档名称作为参数传入方法;
2-开始文档;
3-写入开始标签;
4-写入内容;
5-写入结束标签
6-结束文档;
实例
实现步骤
一:XML文件编写
<?xml version="1.0" encoding="utf-8" ?>
二:代码文件编写
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
namespace XmlWriterClass
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
private void Form1_Load(object sender, EventArgs e)
{
XmlWriter xml_doc = XmlWriter.Create("XmlFile.xml");
//第一种写入元素方法
//写版本为“1.0”的XML声明
xml_doc.WriteStartDocument();
//写入元素的名称以及它的值,注意这种写入元素的方法,是不能在其上面写入任何属性的
xml_doc.WriteElementString("Title", "C#教程");
//关闭文档
xml_doc.WriteEndDocument();
xml_doc.Flush();
xml_doc.Close();
//第二种写入元素方法
//写版本为“1.0”的XML声明
xml_doc.WriteStartDocument();
//写指定的开始标记,这种写入元素的方法,是可以在其上面写入属性的
xml_doc.WriteStartElement("Books");
//关闭元素
xml_doc.WriteEndElement();
//关闭文档
xml_doc.WriteEndDocument();
xml_doc.Flush();
xml_doc.Close();
//第一种写入属性方法
xml_doc.WriteStartDocument();
//写入<Books/>元素
xml_doc.WriteStartElement("Books");
//写入属性的名称
xml_doc.WriteStartAttribute("issue");
//写入属性的值
xml_doc.WriteValue("清华出版社");
//关闭上一个xml_doc.WriteStartAttribute("issue")的 调用
xml_doc.WriteEndAttribute();
//关闭<Books/>元素
xml_doc.WriteEndElement();
xml_doc.WriteEndDocument();
xml_doc.Flush();
xml_doc.Close();
//第二种写入属性方法
xml_doc.WriteStartDocument();
xml_doc.WriteStartElement("Books");
//一次性写入属性的名称和值
xml_doc.WriteAttributeString("issue", "清华出版社");
xml_doc.WriteEndElement();
xml_doc.WriteEndDocument();
xml_doc.Flush();
xml_doc.Close();
//结合使用
xml_doc.WriteStartDocument();
//写入<Books/>元素和属性值,在这里我们不采用xml_doc.WriteElementString()方法来写入元素,因为我们还要在我们写入的元素上面写入属性,而xml_doc.WriteElementString()这种写入元素的方法,是不能在其上面写入任何属性的
xml_doc.WriteStartElement("Books");
xml_doc.WriteAttributeString("issue", "清华出版社");
//写入<Titles/>元素和属性值,注意我们这里用了另外一种写入属性的方法
xml_doc.WriteStartElement("Title");
xml_doc.WriteStartAttribute("OthorName");
xml_doc.WriteValue("C#入门与精通");
xml_doc.WriteEndAttribute();
xml_doc.WriteValue("C#基础");
xml_doc.WriteEndElement();
xml_doc.WriteEndElement();
xml_doc.WriteEndDocument();
xml_doc.Flush();
xml_doc.Close();
}
}
- C#温故而知新学习系列之XML编程—3-Xml写入器XmlWriter类
- C#温故而知新学习系列之XML编程—2-Xml读取器XmlReader类
- C#温故而知新学习系列之XML编程—7-XmlValidatingReader类对XML文档验证
- C#温故而知新学习系列之XML编程—1-XmlDocument类
- C#温故而知新学习系列之XML编程—5-XmlSerializer类把对象序列化为XML文档
- C#温故而知新学习系列之XML编程—6-XmlSerializer类把复杂对象序列化为XML文档
- C#温故而知新学习系列之XML编程—8-XMLSerializer类把XML文档反序列化为对象
- C#温故而知新学习系列之XML编程—4-NET的DOM实现
- xml学习之 XmlWriter
- C#中使用XmlWriter写入XML数据
- C#使用XmlWriter写入XML文件
- C#使用XmlWriter写入XML文件
- C#使用XmlWriter写入XML文件
- C#使用XmlWriter写入XML文件
- C#温故而知新学习系列之面向对象编程—3-类的数据成员
- C#温故而知新学习系列之面向对象编程—15-对象初始化器
- C#温故而知新学习系列之面向对象编程—13-类和结构的区别是什么?
- C#温故而知新学习系列之面向对象编程—14-分布类是什么?
- fake power balance freeshipping
- buy fake power balance
- 3G卡片在开发板上的详细解决方法(适用于大多数3G卡片)
- Eclipse安装Findbugs插件
- 改密码啊~~~~原主人.....
- C#温故而知新学习系列之XML编程—3-Xml写入器XmlWriter类
- Android高通平台处理器间通讯驱动
- (转载自FreeMind)机器学习物语(1):世界观设定
- VS2008 包加载失败导致VS2008打开 WebApplication项目时没有设计视图
- wpf string to color to brush to byte[]
- php实现适配器模式
- 接下来一段时间安排
- gcd的递归表现形式
- 一个子组件没有添加到显示列表前,它的属性不能修改