Я планирую использовать Saxon для проблемы XSLT. Мне нужно запустить мою программу по расписанию. Когда он запускается, ему необходимо выбрать все CSV-файлы из каталога. Количество файлов может быть случайным, но после его обработки они удаляются из папки другим процессом. Первоначально был только один файл CSV с фиксированным именем, поэтому ссылка на него в XSLT не была проблемой. Я также мог программно установить имя файла во время выполнения, чтобы все работало хорошо. Теперь мой XSLT должен знать обо всех файлах, чтобы я мог выводить один XML. Я не уверен, могу ли я передать путь к файлу и позволить XSLT читать все файлы в этом месте? Есть ли команда для этого или есть лучший способ сделать это? Помните, я не знаю, сколько CSV-файлов будет в папке при запуске XSLT.Как читать в нескольких файлах CSV из файла XSLT и выводить один файл XML
0
A
ответ
1
См. www.saxonica.com/documentation/sourcedocs/intro.xml, вы можете использовать функцию collection
для чтения в файлах из каталога, например.
<xsl:for-each select="collection('file:///C:/dir/subdir?select=*.csv;unparsed=yes')/tokenize(., '\n')">
<line><xsl:value-of select="."/></line>
</xsl:for-each>
Возможно, это поможет: http://stackoverflow.com/questions/102531/xslt-multiple-file-inputs –