栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > 其他 > xml语言

详细介绍使用XmlWriter写Xml的示例代码

xml语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

详细介绍使用XmlWriter写Xml的示例代码

假定创建了XmlWriter的实例变量xmlWriter,下文中将使用此实例变量写Xml1.如何使用XmlWriter写Xml文档声明

// WriteStartdocument方法可以接受一个bool参数(表示standalone,是否为独立文档)或者不指定参数standalone保持默认值xmlWriter.WriteStartdocument(false|true);

注意在使用WriteStartdocument方法后最好调用xmlWrite.WriteEnddocument()方法来关闭所有可能未关闭标签
2.如何使用XmlWriter写xml节点以及属性

//写节点xmlWriter.WriteStartElement("cat");//给节点添加属性xmlWriter.WriteAttributeString("color", "white");//给节点内部添加文本xmlWriter.WriteString("I'm a cat");xmlWriter.WriteEndElement();

或者通过WriteElementString(string,string)方法写xml节点同时写下节点值,如下

//通过WriteElementString可以添加一个节点同时添加节点内容xmlWriter.WriteElementString("pig", "pig is great");

3.如何写CData

xmlWriter.WriteStartElement("dog");//写CDataxmlWriter.WriteCData("dog is dog");xmlWriter.WriteEndElement();

4.如何使用XmlWriter添加注释

xmlWriter.WriteComment("this is an example writed by 玉开技术博客 https://www.mshxw.com/ ");

5.如何设置XmlWriter的输出格式,解决输出UTF-16问题
设置xml输出格式,需要通过XmlWriterSettings类,如下代码

XmlWriterSettings settings = new XmlWriterSettings();//要求缩进settings.Indent = true;//注意如果不设置encoding默认将输出utf-16//注意这儿不能直接用Encoding.UTF8如果用Encoding.UTF8将在输出文本的最前面添加4个字节的非xml内容settings.Encoding = new UTF8Encoding(false);                //设置换行符settings.newlineChars = Environment.newline;


完整的代码示例如下:


using System;using System.Collections.Generic;using System.Text;using System.IO;using System.Xml;namespace UseXmlWriter{    class Program    {        static void Main(string[] args)        {            using (MemoryStream ms = new MemoryStream())            {                XmlWriterSettings settings = new XmlWriterSettings();                //要求缩进                settings.Indent = true;                //注意如果不设置encoding默认将输出utf-16                //注意这儿不能直接用Encoding.UTF8如果用Encoding.UTF8将在输出文本的最前面添加4个字节的非xml内容                settings.Encoding = new UTF8Encoding(false);                                //设置换行符                settings.newlineChars = Environment.newline;                using (XmlWriter xmlWriter = XmlWriter.Create(ms, settings))                {                    //写xml文件开始                    xmlWriter.WriteStartdocument(false);                    //写根节点                    xmlWriter.WriteStartElement("root");                    //写字节点                    xmlWriter.WriteStartElement("cat");                    //给节点添加属性                    xmlWriter.WriteAttributeString("color", "white");                    //给节点内部添加文本                    xmlWriter.WriteString("I'm a cat");                    xmlWriter.WriteEndElement();                    //通过WriteElementString可以添加一个节点同时添加节点内容                    xmlWriter.WriteElementString("pig", "pig is great");                    xmlWriter.WriteStartElement("dog");                    //写CData                    xmlWriter.WriteCData("dog is dog");                    xmlWriter.WriteEndElement();                    xmlWriter.WriteComment("this is an example writed by 玉开技术博客 https://www.mshxw.com/ ");                    xmlWriter.WriteEndElement();                    xmlWriter.WriteEnddocument();                }                //将xml内容输出到控制台中                string xml = Encoding.UTF8.GetString(ms.ToArray());                Console.WriteLine(xml);            }            Console.Read();        }    }}

以上就是详细介绍使用XmlWriter写Xml的示例代码的详细内容,更多请关注考高分网其它相关文章!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/794693.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号