Как создать текстовый узел XML с пустым строковым значением (в Java)
Я используюTransform
объект для сохранения моего файла XML, но, похоже, отбрасывает пустые текстовые узлы. Есть ли способ создать (и сохранить) текстовый узел с пустой строкой, т.е. "".
Вот как я создаю узел:
Element type = doc.createElement("TYPE");
type.appendChild(doc.createTextNode(value));
Просто иногдаvalue
пустая строка "". Когда я смотрю на XML с помощью текстового редактора, я вижу
<TYPE />
вместо
<TYPE></TYPE>
После того, как я прочитал этот XML-файл обратно и перебрал узлы, элемент <TYPE> просто не имеет дочерних элементов, хотя я явно создал для него один узел #text!
РЕДАКТИРОВАТЬ - С Днем Благодарения (для моих поддерживающих канадцев)
Важное замечание: я не работаю с известным набором тегов, скорее программа, над которой я работаю, использует наличие текстового узла для назначенияJTextField
в графический интерфейс. Просто иногда поле остается пустым (не ноль, а ""). Когда я сохраняю это поле и затем читаю его обратно, графический интерфейс не отображаетJTextField
больше, потому что нет текстового узла. Поэтому я ищу способы создания XML-документа, который создает текстовый узел, даже если в нем ничего нет. Если это просто невозможно сделать с помощью XML, тогда мне придется использовать атрибут, чтобы пометить теги, которые можно редактировать (что-то вроде предложенного Андреем Бреславом) и поэтому должен иметьJTextField
назначены.
Я попробую предложение Мэдса Хансена о неразрывном пространстве.