META http-equiv="Content-Type" content="text/html; charset=UTF-16"
というタグが自動的に付加されてしまいます。
元ファイルがいずれもShift_JISで、出力もShift_JISにしたいのですが、この自動的に付加されるタグを出ないように、もしくは自動でShift_JISとしてタグ出力する方法はありませんでしょうか。
こちらの環境で、試しにxmlからhtmlを作成してみました(msxml6.dll, msxsl.exe ver3)。
META http-equiv="Content-Type" content="text/html; charset=UTF-16"
というタグが自動的に付加されることはなく、無事Shift_jisのhtmlファイルが作成できました。msxml,msxslのバージョンが違うせいでしょうか。申し訳ないですがちょっと理由まではわかりません。何か参考になればよいのですが。
使ったファイルはこちらです。
xmlファイルはhoge.xml
<?xml version="1.0" encoding="shift_jis"?> <name> ほげ </name>
xslファイルはhoge.xsl
<?xml version="1.0" encoding="shift_jis"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="shift_jis"/> <xsl:template match="/"> <html> <xsl:apply-templates/> </html> </xsl:template> <xsl:template match="name"> <xsl:apply-templates/> </xsl:template> </xsl:stylesheet>
コマンドラインでこれを実行。
C:\>msxsl hoge.xml hoge.xsl -o piyo.html
出力ファイル(piyo.html)の中身はこれで、文字コードはShift_jisでした。
<html> ほげ </html>
コメント(1件)
試してみることにします。