У меня есть большой (10 тыс. Строк) XML-файл. Обычно я использую Notepad++ или Chrome для открытия файлов XML. Хотя можно свернуть / развернуть дочерние записи, я не вижу, какой элемент у каких родителей.

Например:

<parent1>
<parent2>
<parent3>
<element1>
my aim entry
</element1>
</parent3>
</parent2>
</parent1>

Каждый раз, когда я хочу проверить родителей элемента element1, я проверяю верхние строки, сворачиваю / разворачиваю их, чтобы узнать, что настоящее наследие таково:

parent1.parent2.parent3.element1

Можно ли найти это наследие по программе? Потому что я делаю эту работу для этого большого XML-файла каждую неделю, а иногда я делаю ошибки и все системные сбои.

2 ответа2

1

У хороших редакторов XML такое будущее, например, IBM использует кислород.

0

Если у вас есть xmllint (по умолчанию он должен быть в Linux/OS X, иначе здесь), просто выполните:

xmllint --shell your-xml-file.xml

Затем сформулируйте следующий запрос XPath:

xpath //element1/ancestor::*

Результат будет:

Object is a Node Set :
Set contains 3 nodes:
1  ELEMENT parent1
2  ELEMENT parent2
3  ELEMENT parent3

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .