1

ソース xml に XSL スタイル シートを適用し、出力をターゲット xml ファイルに書き込もうとしています。xsl は、ソース xml 内に存在する xml コメントを削除します。

ターゲット xml ファイルには、ヘッダーに UTF-16 エンコードが含まれています。

それでも、出力 xml を utf-8 エンコーディングにしたいのです。私が使用したコードは

            XmlWriterSettings xwrSettings = new XmlWriterSettings();
            **xwrSettings.Encoding = Encoding.UTF8;**

            XslCompiledTransform xslt = new XslCompiledTransform();
            xslt.Load("sample.xsl");
            StringBuilder sb = new StringBuilder();
            XmlReader xReader = XmlReader.Create("Source.xml");
            XmlWriter xWriter = XmlWriter.Create(sb, xwrSettings);                
            xslt.Transform(xReader, xWriter);
            File.WriteAllText("Target.xml",sb.ToString());

xml ライターの設定を UTF-8 にしようとしましたが、うまくいきません。

4

1 に答える 1

1

ファイルに書き込んでいるので、次を使用しないでください:

using (XmlReader xReader = XmlReader.Create("Source.xml"))
using (XmlWriter xWriter = XmlWriter.Create("Target.xml", xwrSettings)) {
    xslt.Transform(xReader, xWriter);
}
// your file is now written
于 2010-09-15T11:37:26.973 に答える