Я ищу подходящий инструмент для преобразования текстовых файлов в xml.Преобразование текстового файла без разделителя с xslt в xml
Текстовый файл выглядит следующим образом:
2017-01-03-10.11.1201000B H4_01DE33411121...
2017-01-01-09.12.1301000BHAX4_01DE34256137...
2017-01-01-10.12.1301000BMLH4_01DE63789221...
Каждая строка является содержание объекта и у меня есть следующая информация:
Letter 0-18: Attribute1
Letter 19-21: Attribute2
Letter 22-23: Attribute3
Letter 24: Attribute4
Letter 25-31: Attribute5
and so on....
и так далее ...
сейчас Я ищу инструмент, который преобразует этот текстовый файл по этим правилам в следующий xml
<entities>
<entity>
<attribute1>2017-01-03-10.11.12</attribute1>
<attribute2>010</attribute2>
<attribute3>00</attribute3>
<attribute4>B</attribute4>
<attribute5>H4_01</attribute5>
... and so on
</entity>
<entity>
<attribute1>2017-01-01-09.12.13</attribute1>
<attribute2>010</attribute2>
<attribute3>00</attribute3>
<attribute4>B</attribute4>
<attribute5>HAX4_01</attribute5>
... and so on
</entity>
<entity>
<attribute1>2017-01-01-10.12.13</attribute1>
<attribute2>010</attribute2>
<attribute3>00</attribute3>
<attribute4>B</attribute4>
<attribute5>MLH4_01</attribute5>
... and so on
</entity>
</entities>
Инструмент также нуждается в реализации некоторой простой логики, например, обрезки строк, если/else, преобразование формата даты.
Во-первых, я подумал об использовании xslt - поэтому владелец этого странного текстового файла мог создать соответствующий файл конфигурации даже сам по себе (это было бы лучше!). Но я часто читал, что xslt предназначен только для преобразования xml в другие форматы, а не для преобразования текстовых файлов в xml.
Он также должен быть обслуживаемым, поэтому сценарий оболочки с использованием awk и sed будет очень запутанным.
Знаете ли вы инструмент, который более подходит, чем xslt?
С уважением, Рокко
XSLT 2.0 и 3.0 можно прочитать в текстовых файлах с 'ПАООНОМ rsed-text ('file.txt') ', а затем используйте' tokenize', 'substring' и/или' xsl: analysis-string' для разбиения строк на части, поэтому XSLT 2.0 или 3.0, безусловно, является подходящим инструментом. –