У меня XML с большим содержимым с таким количеством узлов, а также некоторые узлы не закрыты. Для удаления этих незакрытых узлов потребовалось гораздо больше времени вручную. Есть ли способ удалить это просто по коду? Для конкретной строки я могу удалить. Но как это сделать для больших XML?Как удалить узел, который не был закрыт в XML?
ответ
Элемент, который не является самозакрывающимся, должен иметь конечный тег в XML. В противном случае текстовый объект у вас просто не XML. Неважно, насколько маленький или большой текстовый объект, это должно быть well-formed должно считаться XML, а определение правильно сформированного требует, чтобы элементы имели конечный тег или были самозакрывающимися.
Таким образом, вы не можете рассчитывать на поддержку любого подходящего синтаксического анализатора XML или инструмента для добавления отсутствующих конечных тегов или удаления незакрытых начальных тегов. Кроме того, вам не составит труда написать свой собственный инструмент для удаления или восстановления незакрытых элементов, потому что в общем случае невозможно быть уверенным, где должен был закончить элемент.
Это зависит от того, что вы подразумеваете под узлами, которые не закрыты. Я вижу несколько проблем:
- атомных узлов (оканчивающиеся /> вместо того, чтобы начало/конец тегов)
- узлы, которые имеют такое же имя тега, но различные атрибуты (тогда как вы знаете, какой из них является «не закрыто»? они должны ли быть родителем и ребенком или братьями и сестрами?)
поэтому проблема не столько с XML, но с вашими требованиями. Пример будет хорошим, поэтому я могу быть более конкретным.
- 1. Xml корневой узел не закрыт
- 2. Курсор, который не был деактивирован или закрыт
- 3. Как удалить узел XML?
- 4. Как удалить XML-узел?
- 5. Невозможно удалить файл, который был открыт (и закрыт?), Используя 'with'
- 6. Удалить узел XML, который содержит определенное значение
- 7. Удалить дочерний узел XML
- 8. Удалить XML-узел
- 9. Удалить узел xml -Xelement
- 10. Как обойти zip-архив, который уже был закрыт в python?
- 11. AS3 XML удалить узел
- 12. Удалить узел XML в Notepad ++
- 13. Завершение курсора, который не был деактивирован или закрыт нефатальной ошибкой
- 14. Курсор, который не был деактивирован или закрыт. Я получаю ошибку?
- 15. Завершение курсора, который не был деактивирован или закрыт
- 16. Android: Завершение работы курсора, который не был деактивирован или закрыт
- 17. Завершение курсора, который не был деактивирован или закрыт
- 18. Чтение всей строки из серверного сокета, который не был закрыт
- 19. android завершает курсор, который не был деактивирован или закрыт
- 20. Как удалить узел Xml в Haxe
- 21. Как удалить узел из XmlDocument, загруженного XML
- 22. Как удалить узел тега в XML
- 23. Как удалить узел из XML в Oracle?
- 24. Как прокрутить редактор, который был закрыт клавиатурой на виду?
- 25. Удалить конкретный узел из XML
- 26. удалить конкретный узел XML Javascript
- 27. Канал Кассандры был закрыт
- 28. Удалить XML-узел С jQuery
- 29. Найти XML-тег, который не закрыт в Java
- 30. Xml удалить узел, элементы дорожат
Когда вы обнаружите открытый тег, который не закрыт, вы предполагаете, что он должен быть самозакрывающимся или иметь потенциально потенциальное тело с дочерними узлами? В последнем случае вы также удаляете узлы, которые, как вы подозревали, были детьми, используя пробелы в качестве подсказки? –
Если узел не закрыт, это не xml. –
Это не ** действительный ** XML. Возможно, это то, чего он пытается достичь. Вы пытаетесь заставить контент быть действительным XML? –