using System;
using System.IO;
using System.Text;
using System.Xml;

namespace foo {
public class bar {
public static void Main() {
Test1();
Test2();
Test3();

}

public static void Test1() {
string strInput = "<?xml version='1.0' encoding='utf-16'?><foo><bar /></foo>";
XmlTextReader r = new XmlTextReader(new StringReader(strInput));
StringBuilder sb = new StringBuilder();
XmlTextWriter w = new XmlTextWriter(new StringWriter(sb));
w.WriteNode(r, false);
w.Flush();
string strOutput = sb.ToString();
Console.WriteLine("Input = {0}, Output = {1}", strInput.Length, strOutput.Length);
}

public static void Test2() {
string strInput = "<?xml version='1.0' encoding='utf-16'?><foo><bar /></foo>";
XmlTextReader r = new XmlTextReader(new StringReader(strInput));
MemoryStream ms = new MemoryStream();
XmlTextWriter w = new XmlTextWriter(ms, Encoding.Unicode);
w.WriteNode(r, false);
w.Flush();
ms.Position = 0;
StreamReader sr = new StreamReader(ms);
string strOutput = sr.ReadToEnd();
Console.WriteLine("Input = {0}, Output = {1}", strInput.Length, strOutput.Length);
}

public static void Test3() {
string strInput = "<?xml version='1.0' encoding='utf-16'?><foo><bar /></foo>";
XmlTextReader r = new XmlTextReader(new StringReader(strInput));
MemoryStream ms = new MemoryStream();
XmlTextWriter w = new XmlTextWriter(ms, Encoding.UTF8);
w.WriteNode(r, false);
w.Flush();
ms.Position = 0;
StreamReader sr = new StreamReader(ms);
string strOutput = sr.ReadToEnd();
Console.WriteLine("Input = {0}, Output = {1}", strInput.Length, strOutput.Length);
}

}
}

转载于:https://www.cnblogs.com/razor/archive/2004/04/22/7228.html

几个 XmlTextReader 的例子, 帮了我大忙.相关推荐

  1. 6个闻所未闻的微信小程序,关键时候一定能够帮上你大忙!

    现在手机微信里面各式各样的微信小程序应有尽有,无论是办公还是娱乐或是学习都有,更本就不亚于APP,并且使用还非常便捷,然而就在这么多的微信小程序里面还有好多闻所未闻的微信小程序,虽然现在并不出名,但是 ...

  2. 【转】七个例子帮你更好地理解 CPU 缓存

    我的大多数读者都知道缓存是一种快速.小型.存储最近已访问的内存的地方.这个描述相当准确,但是深入处理器缓存如何工作的"枯燥"细节,会对尝试理解程序性能有很大帮助. 在这篇博文中,我 ...

  3. 中心极限与大数定理律的关系_中心极限定理(CLT)?2个例子帮你轻松理解CLT...

    全文共1204字,预计学习时长4分钟 图源:unsplash 中心极限定理(CLT)是指,给定足够大的样本量,无论变量在总体中的分布如何,变量均值的抽样分布都将近似于正态分布. 这是统计学中的一个基本 ...

  4. 一个有关占有而非所有的例子——帮人占座或者以物品占座的非正义性

    以占座为例讨论占有 前提 惊人之句 证明 以上课为例,讨论同学们的占座问题.分两种情况讨论,座位数量大于人数和座位数量小于人数的时候. 前提 座位不属于任何一个同学,属于学校,在这里可以看作为公共资产 ...

  5. 赶紧拿走!这4个实用的软件关键时刻能帮上你大忙!

    话不多说,上资源. 小鸡模拟器 小鸡模拟器是一个特别酷的模拟器.支持Android,iOS,盒子,Win 和VR.这个软件拥有十八款经典游戏,比如超级玛丽,魂斗罗,拳皇等.同时还兼容各种格式的游戏,像 ...

  6. sqlserver 事务例子

    事务是实现原子性的手段,原子性是指某些事情要么全部发生,要么都不发生,我们都知道,程序的执行是有顺序的,在程序的执行过程中,难免会出现错误,如果对于某些必须作为原子性事务发生的事,在执行过程中,有一部 ...

  7. 【Hadoop】一个例子带你了解MapReduce

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  8. 王阳明没法帮你造出光刻机

    link 我说一个简单粗暴的话一句就能讲清楚 王阳明没法帮你造出光刻机. 这句话很简单,很粗暴,甚至很不讲道理.但是这句话其实可以把很多东西都说清楚. 也即是 心学也罢,玄学也好,道家也罢,佛家也好, ...

  9. 员工调职其他部门 公司百科帮大忙

    何小姐原本在财务部门,对财务部门的流程很熟悉,但最近申请调职到销售部,很多流程两眼一抹黑,不过好在公司使用cpolar+DokuWiki建立了公司知识库,让何小姐很快上手销售工作.现在就让我们看看,这 ...

最新文章

  1. 持续集成(三):最佳实践
  2. Tickets HDU - 1260
  3. 中国石油计算机文化基础答案,中国石油大学17年秋《计算机文化基础》第二次在线作业答案...
  4. C#设计模式之12-代理模式
  5. 使用SQLite数据库存储数据(2)-向表中插入记录
  6. 【蓝桥杯嵌入式】【STM32】11_2016_第七届_蓝桥杯_省赛_电压测量监控设备
  7. 第 19 次 CCF CSP 认证 202006-4 1246(digits)
  8. 震惊:selenium竟然不是自动化测试工具
  9. xp等系统的登陆的密码清除方法
  10. Java之导入Excel 后端篇
  11. C++主线程与子线程的关系
  12. 学生宿舍管理项目开发计划书_学生宿舍管理系统项目-计划书.doc
  13. 解决域用户安装软件权限问题
  14. 论文中三线式表格的快速插入(word)
  15. python源代码制作星空_用python画星空源代码是什么
  16. 博图V13、V14、V15、V15.1、V16版本安装包链接下载
  17. wps/word中怎么插入各种水平分隔线
  18. 腾讯精选50题—Day6题目43,46,53
  19. 分析复联系列电影台词,看看每个英雄说得最多的词是什么
  20. 51单片机学习篇-- --基于51单片机的串口通信协议

热门文章

  1. 运营商的光猫有四个输出端口,哪个带宽最大?
  2. Failed building wheel for scandir 解决方案
  3. Qt——P23 登录窗口布局
  4. 进程的定义组成组织方式特征
  5. 如何创建SQL Server日志传送
  6. libz.so.1: cannot open shared object file: No such file or directory
  7. C++Primer第四版 阅读笔记 第二部分 “容器和算法”
  8. vue - rimraf
  9. C# 中的DevExpress CheckedListBoxControl控件
  10. memcache and redis