XSLT插入TXT文件

时间:2010-11-04 17:15:50

标签: xml xslt

我正在使用XSLT将XML文件转换为HTML文件。

我想将纯文本文件作为转换的一部分插入到HTML中。

这可能吗?

3 个答案:

答案 0 :(得分:6)

您有几个选择:

  1. 如果您可以在<text></text>标记中包围纯文本,则可以使用document()功能导入该文本。这适用于XSLT1.0,不需要其他编程语言。
  2. 如果您无法修改源文件,但确实有XSLT2.0,则可以使用unparsed-text()进行修改。
  3. 如果您没有XSLT2.0,但是您使用的是Java,那么您可以invoke a Java function。 Microsoft平台可能会提供类似的功能。

答案 1 :(得分:2)

我最终使用的解决方案比上面提到的解决方案稍微简单一些。我使用了以下内容:

<xsl:variable name="input-text" as="xs:string" select="unparsed-text('../Input/pipehat.txt', 'iso-8859-1')"/>

将文本放入变量,然后在适当的位置输出变量。

<xsl:value-of select="$input-text"/>

答案 2 :(得分:0)

除了Matthijs Bierman提到的选项之外,如果您正在使用的环境支持此选项,您还可以将文本文件的内容作为参数传递给转换。

例如,在.NET中,执行转换的程序可以将文件读入字符串变量,将其作为参数添加到XsltArgumentList对象,并将此对象传递给XslCompiledTransform Transform方法。