c# - 在 C# 中将 Xml UTF-8 转换为 ISO-8859-9

标签 c# xml utf-8

我有一个长的 xml 文档,它是由字符串生成器创建的,其起始标记如下 <?xml version="1.0" encoding="UTF-8"?> <xxxxxx> .. </xxxxxx> 我想将此 xml 转换为 iso-8859-9 编码类型。 我怎样才能做到这一点? 或者有人建议我另一种在 C# 中创建 ISO-8859-9 编码类型 xml 的方法。

最佳答案

由于只有当文本被编码成流时编码才有意义,我假设您想使用给定的编码将文档保存到文件中。这样,编码属性将匹配文件的编码。

尝试:

using System.IO;
using System.Xml;

XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
Stream stream = File.Open(path, FileMode.Create, FileAccess.Write, FileShare.None);
XmlWriterSettings settings = new XmlWriterSettings();
settings.Encoding = Encoding.GetEncoding("ISO-8859-9");
XmlWriter writer = XmlWriter.Create(stream, settings);
doc.Save(writer);

关于c# - 在 C# 中将 Xml UTF-8 转换为 ISO-8859-9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/964649/

相关文章:

php - 无法确定 MySQL 或 PHP 是否对 UTF8 字符串进行了错误编码

c++ - 使用C++将UTF8字符打印到Linux控制台

c# - 使用 C# 仅关闭谷歌浏览器隐身窗口

c# - 是否可以在远程 Windows 机器上创建性能计数器?

xml - 将 XML 转换为 Json 并从转换后的 Json 中删除 XML 声明

c# - ASP.NET:将 xml 节点添加到文件的第一个位置

xml - 大写和小写的 XML/RDF 标签名称之间有什么区别吗?

java - Tomcat UTF-8 问题

c# - 为什么我的 Azure WebJobs "settings.job"文件被忽略?

c# - cefsharp改变传给网站的参数屏幕的宽高c#