Добавление строки в файл XML после определенных тегов

992
nmuntz

Как бы вы, ребята, пошли добавить строку к группе файлов XML после определенных тегов? Решение может быть основано на использовании инструментов Unix или названии текстового редактора или утилиты, которые могут позволить мне сделать это быстро и легко. У меня есть более 60 файлов, которые мне нужно отредактировать.

Например, у меня есть следующий XML:

 <Node disablePersistence="true"> <Name>Mapper</Name> <Action> <Class-Name>com.test.component.Mapper</Class-Name> <Param name="output_url" value="constant:file:///output.xml"/> <Param name="xml_url" value="constant:file:///input.xml"/> <Param name="xsl_url" value="constant:file:///template.xsl"/> </Action> <Next-Node>ComposeMessage</Next-Node> </Node> 

Сначала мне нужно будет найти тег Node. Тогда мне нужно будет искать тег Name = Mapper. Затем найдите тег Action. Затем найдите тег Param. Там, где находятся все теги для Param, нам нужно вставить новую строку:

 <Param name="new_parameter" value="constant:true"/> 

Это возможно, или это требует слишком много, и будет быстрее редактировать все файлы вручную?

1
безусловно, возможно. используйте Notepad ++ в Windows или Sublime Text в Unix или Windows и посмотрите на параметр поиска замены с помощью регулярного выражения (регулярное выражение). Ваше регулярное выражение может быть немного сложным, но решит вашу проблему для любого количества файлов Art Gertner 10 лет назад 1
Возможно, это дает некоторые идеи? http://stackoverflow.com/questions/8772125/editing-xml-files Конечно, это можно сделать с помощью сценариев Unix, но специфичные для xml инструменты будут с большей вероятностью иметь дело с неожиданными различиями в вводе должным образом. Nick Russo 10 лет назад 0

0 ответов на вопрос

Похожие вопросы