Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > XML. Мусор в файле


Автор: DissDoc 9.9.2008, 19:07
Есть файл xml приблизительно такого вида
Код

<list>
    <tag name="1"/>
    <tag name="2"/>
    <tag name="3"/>
    <tag name="4"/>
</list>

Удаляю я тег таким способом
Код

Node.removeChild(newChild);

В результате получаю
Код

<list>
    <tag name="1"/>
    <tag name="2"/>
                                          <--------- ПУСТАЯ СТРОКА ОСТАЕТСЯ
    <tag name="4"/>
</list>

Как избавиться от этого мусора?

P.S. Пользую DocumentBuilder и DocumentBuilderFactory

Автор: ivg 9.9.2008, 20:01
Цитата(DissDoc @  9.9.2008,  22:07 Найти цитируемый пост)
Как избавиться от этого мусора?

Это не мусор. С точки зрения DOM - это текстовый узел(Node). Избавиться просто:
Код

Node sibling = newChild.getPreviousSibling();
if (sibling != null && Node.TEXT_NODE == sibling.getNodeType()) {
    parentNode.removeChild(sibling);
}
parentNode.removeChild(newChild);
 Код не проверял, но мысль, я думаю, понятна.

Автор: DissDoc 9.9.2008, 20:21
Хм, мысль интересная. Завтра проверю...
Вроде как и верно, но получается удаление опять дочернего тега как сущность, т.е. все равно гипотетически останется пустой узел.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)