我需要在ASCII文本格式文件,我使用下面的代碼XSLT ASCII文本格式
<xsl:output method="xml" indent="yes" encoding="US-ASCII"/>
但它似乎並沒有工作的任何想法,我怎樣才能使它發揮作用?
我需要在ASCII文本格式文件,我使用下面的代碼XSLT ASCII文本格式
<xsl:output method="xml" indent="yes" encoding="US-ASCII"/>
但它似乎並沒有工作的任何想法,我怎樣才能使它發揮作用?
有可能您的XSLT引擎不支持ASCII
的xml
輸出方法,然後自動切換到UTF-8
或UTF-16
。您可以使用這個最小的XSLT樣式表進行試用:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" indent="yes" encoding="US-ASCII"/>
<xsl:template match="/">
<root>ä</root>
</xsl:template>
</xsl:stylesheet>
如果通過處理器運行它,撒克遜:
$ saxonb-xslt -s:test.xsl -xsl:test.xsl
的結果應該是這樣的,如果ASCII支持:
<?xml version="1.0" encoding="US-ASCII"?>
<root>ä</root>
如果不是的話,你需要一個後處理步驟。 xmllint
合理的最新版本可以做到這一點:
xmllint --encode US-ASCII intermediate.xml > final.xml
更確切地說:「它似乎並沒有工作」是什麼意思? –
我很需要ASCII的動機。幾乎可以肯定,一個將文件處理爲XML的下游進程可以使用UTF-8等文檔編碼,因爲每個XML文檔都是一系列Unicode字符。而且,不理解XML的下游流程應該能夠處理二進制文件。你的場景是什麼? –