Можно ли сохранить пробелы внутри тегов?Сохранение «пробелов» внутри тегов
Я обращаюсь к узлам XML (содержащим контент XHTML) в XPathDocument с помощью XPathNodeIterator.
Некоторые из тегов в узлах не являются «строгими» XHTML (и это разрешено в конечном выходе инструмента). Некоторые узлы содержат теги изображений без конечного пробела.
<img src="filename.png" alt="description"/>
Когда я храню результирующие узлы, они получают красиво отформатированное с конечным пространством.
<img src="filename.png" alt="description" />
Возможно ли получить содержимое узла, сохраняя интервал между метками (в этом случае не имеет места)? Я думал о чем-то подобном PreserveWhitespace.
Упрощенный пример коды используется
xmlDoc = New XPathDocument(fileIn, xmlSpace.Preserve)
xmlNav = xmlDoc.CreateNavigator()
Dim xmlNode As XPathNodeIterator
Dim ns As XmlNamespaceManager = new XmlNamespaceManager(xmlNav.NameTable)
xmlNode = xmlNav.Select("/export/contents[target[@translate='True']]")
While xmlNode.MoveNext()
target = xmlNode.Current.selectSingleNode("target").InnerXML
' ... '
End While
Некоторых советов: Как Марк отметил, что нет никакой разницы в значении полученного XML в отношении незначимых пробелов внутри тегов (или порядок тегов, если на то пошло).
Основная проблема, с которой я сталкиваюсь, заключается в том, что данные поступают из системы CMS, которая обрабатывает как новое, так и устаревшее содержимое. Недавно процесс создания контента переместился в XML/XHTML, так что в системе все еще есть более старый нестрогий контент XHTML.
Используемые инструменты QA по-прежнему в основном основаны на тексте и создают для HTML и управляются другим отделом (процесс QA необходимо будет скорректировать/обновить). Вот почему я хотел бы сохранить теги как можно ближе к исходному формату, насколько это возможно.
Как временная работа вокруг я добавил несколько регулярных выражений (сравнивающих новые и предыдущие версии узлов) для поиска и исправления «различий», введенных путем разбора XML с .NET
Я скорее не редактирую содержимое, поэтому добавление xml: whitespace к контенту на самом деле не является вариантом. – barry
Можете ли вы показать нам пример кода, иллюстрирующий, как вы обращаетесь к узлам XML и выводите их? – Cerebrus
Я добавил пример кода – barry