Я хочу проанализировать файл XML с помощью SAX Xerces C ++, игнорируя при этом любые пробелы, символы возврата каретки и табуляции, которые НЕ находятся в атрибутах элемента или в элементах начала и конца.Я хочу игнорировать пробелы, возврат каретки и табуляцию между тегами.
Например, в следующем XML-файле:
<tag1 attr1="val 1"><tag2>my text here</tag2>
[много пробелов здесь] </tag1>
Я хочу сохранить пробелы в строках 'val 1', 'мой текст здесь', но игнорируйте возврат каретки и множество пробельных символов между окончанием </tag2>
и окончанием </tag1>
.
Я попытался использовать логический флаг 'WithinElement', установленный в trueв startElement()
и установлен в false в endElement()
методах, но это не мешает мне игнорировать пробельные символы, например, между </tag2>
и </tag1>
.
Должно ли это быть сделано методом characters()
?и как это сделать, поскольку, кажется, нет способа узнать, где мы находимся именно тогда, когда вызывается метод characters()
?