亲爱的stackoverflow社区
我搜索了这么长时间,但是我找不到关于这个话题的任何东西,也许你们中的一个人可以帮助我。
我搜索XSlTransform查询,该查询允许我以其名称找到并获取文件。
我尝试搜索并将更多信息输入到文本文件中,例如:c:/errorlogs/2019-03/day1.txt
我预先感谢您。
最好的问候
顺便说一句。我在XSLT-2.0
中写信----编辑----
我现在写下了sorce,它起作用,但是如果有新的输入,则错误消息将是第一个XD后面的apears也许你们中的一个人可以帮助我解决这个问题。
例如:errormessage1errormassage2
我的目标:errormessage1 [tab] errormessage2
如果您知道XML文件的名称,则可以将文件名转换为URI并将其提供给doc()
或document()
函数。
"查找"文件,如果您不知道其名称更多是一个挑战;这取决于您开始使用的信息。collection()
功能可在XSLT 2.0中获得;该规范用非常抽象的术语描述了它,但是许多实现在此处提供了一些搜索功能:例如,请参见
https://www.saxonica.com/html/documentation/sourcedocs/collections.html
hi Passcody,
首先欢迎使用stackoverflow:d!
我有几个问题:
- 您想对文件做什么?您想搬迁/重命名吗它,还是您想对内容进行某些操作文件?
- 该文件位于哪种映射结构中?你能提供一个例子吗?同一文件夹中是否有多个文件?
此信息对于给您正确的答案是必要的。您提供的越多,答案就越好,将有助于您的具体情况。
例如,如果您想在当前位置获取XML文件的名称。您可以包括:
<URL:http://www.w3.org/TR/xpath-functions/#func-document-uri>
<xsl:value-of select="document-uri(/)"/>
这将为您提供文件的完整URI(位置),要获取文件名,您需要在最后一个"/"之后选择字符串。您可以使用子弦函数来指定要使用的字符串部分。
如果您可以将文件的路径包括在变量中(请参阅此问题),您可以在当前目录中的文件上循环以创建具有相同内容的新文件,您可以将其写入新位置或完成所有内容其他类型的事情。
让我们说,XSLT可以做很多有趣的事情,但是人们将需要更多信息才能获取您的具体情况:)。可以在此网站上找到许多有用的XSLT功能。我敢肯定,如果您在此网站上玩了一段时间,您也可以找到所需的内容。
我希望这会有所帮助!祝你有美好的一天。
jesper
编辑:我将一些答案更改为不包含错误的信息。
编辑:在评论中回答问题:您可以在代码循环中的XSLT中添加"新线"部分。添加<xsl:text> </xsl:text>
或<xsl:text>
</xsl:text>
。两者中的任何一个都可以工作。
而不是:
ErrorMessage1ErrorMessage2
,
您会得到:
ErrorMessage1
ErrorMessage2