锘??xml 乱码的解决
来源:互联网 发布:vue.js视频百度云 编辑:程序博客网 时间:2024/05/21 06:44
读写一个XML文件,然后对文件内容进行加密(Base64),方便网络传输。
发现生成的XML文件,总是这样的文件头:锘??xml version="1.0" encoding="utf-8"?> ,
而不是原来的"<"xml version="1.0" encoding="utf-8"?>。
解决法方法是,将文件内容读取到一个XMLDocument 对象中,然后对内容更改/加密。
接下来,如果直接把XMLDocument.Save(OutputFileName),就会有乱码的出现。
建议使用XMLDocument.Save(Stream),比如MemoryStream,以内存而不是磁盘或网络连接作为支持存储区。
(MemoryStream 封装以无符号字节数组形式存储的数据,该数组在创建 MemoryStream 对象时被初始化,或者该数组可创建为空数组。可在内存中直接访问这些封装的数据。内存流可降低应用程序中对临时缓冲区和临时文件的需要。
流的当前位置是下一个读取或写入操作可能发生的位置。当前位置可以通过 Seek 方法检索或设置。在创建 MemoryStream 的新实例时,当前位置设置为零。
)。所以非常适合编码/解码操作,以Byte为操作,不会有乱码的问题。Memostream.Position=0
最后调用简单的CopyStream(MemoryStream, outputFileName),生成XML文件。
private void CopyStream(Stream src, string filename)
{
//dest.Position = 0;
StreamReader reader = new StreamReader(src);
Stream dest = new FileStream(filename, FileMode.Create, FileAccess.Write, FileShare.None);
StreamWriter writer = new StreamWriter(dest);
writer.Write(reader.ReadToEnd());
writer.Flush();
writer.Close();
writer.Dispose();
dest.Close();
dest.Dispose();
reader.Close();
reader.Dispose();
}
private void CopyStream(Stream src, Stream dest)
{
//dest.Position = 0;
StreamReader reader = new StreamReader(src);
StreamWriter writer = new StreamWriter(dest);
writer.Write(reader.ReadToEnd());
writer.Flush();
reader.Close();
reader.Dispose();
}
- 锘??xml 乱码的解决
- XML传送时乱码的解决
- delphi 操作 utf-8 的xml 有乱码的解决
- delphi 操作 utf-8 的xml 有乱码的解决
- java写xml乱码解决
- xml-rpc 在asp中-中文乱码的解决
- 修改tomcat的conf/server.xml解决网页乱码
- php解析XML和AJAX时乱码问题的解决
- 解决JAVA,properties loadFromXML读取中文XML乱码的方法
- php 读取xml的方法 (iconv解决中文乱码问题)
- 修改tomcat的conf/server.xml解决网页乱码
- 修改tomcat的conf/server.xml解决网页乱码
- 修改tomcat的conf/server.xml解决网页乱码
- 修改tomcat的conf/server.xml解决网页乱码
- 修改tomcat的conf/server.xml解决网页乱码
- 解决JTidy HTML=>XML中文乱码
- Cmakeup 写xml 解决中文乱码问题
- 配置web-xml解决中文乱码问题
- putty使用方法
- 步入一流企业 CRM助推翻三座大山
- 内核配置工具
- 2009年10月23日上午所做的事
- Js and Css
- 锘??xml 乱码的解决
- 《世界因你不同》——人生第一个重要决定:念小学
- 软件测试工具速查手册
- Apache PHP利用HTTP缓存协议原理解析及应用
- 三年大变样之目标
- WorkShop + WebLogic Portal 开发和配置
- 经典windows编程-----printf
- C# Asp.NET 生成GOOGLE地图和索引
- 泰国餐厅记