我正在搞乱编码。
一方面,我有一个以 UTF-8 格式响应我的 url(我非常确定,感谢 firebug 插件)。
我使用以下代码打开读取 UTF-8 格式内容的 url:
StreamReader reader = new StreamReader(response.GetResponseStream(),System.Text.Encoding.UTF8);
另一方面,我有一个转换 xslt 表,其中包含以下代码:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
<br/>
hello
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
此 xslt 表也以 UTF-8 格式保存。
我使用以下代码将 xml 与 xslt 混合:
StringWriter writer = new StringWriter();
XslCompiledTransform transformer = new XslCompiledTransform();
transformer.Load(HttpContext.Current.Server.MapPath("xslt\\xsltsheet.xslt");
XmlWriterSettings xmlsettings = new XmlWriterSettings();
xmlsettings.Encoding = System.Text.Encoding.UTF8;
transformer.Transform(xmlreader, null, writer);
return writer;
然后,毕竟我在网络浏览器中呈现了该作者的内容,并且我收到以下错误:
XML页面无法显示
无法使用样式查看 XML 输入
床单。请更正错误并
然后单击“刷新”按钮,或尝试
稍后再试。
从当前编码切换到
不支持指定的编码。
处理资源时出错
'http://localhost:2541/结果....
<?xml version="1.0" encoding="utf-16"?>
我想知道在哪里可以找到 UTF-16 编码:
- 我的所有文件都保存为 UTF-8
- 服务器的响应采用 UTF-8 格式
- 读取xslt表的方式配置为UTF-8。
任何帮助,将不胜感激。
提前致谢。
此致。
Jose.