Cómo crear un nodo de texto XML con un valor de cadena vacío (en Java)
Estoy usando unTransform
objeto para guardar mi archivo XML pero parece que deja caer nodos de texto vacíos. ¿Hay alguna forma de crear (y mantener) un nodo de texto con una cadena vacía, es decir, "".
Así es como creo el nodo:
Element type = doc.createElement("TYPE");
type.appendChild(doc.createTextNode(value));
Es solo que a vecesvalue
es una cadena vacía "". Cuando miro el XML con un editor de texto, veo
<TYPE />
en lugar de
<TYPE></TYPE>
Después de volver a leer este archivo XML y atravesar los nodos, el elemento <TYPE> simplemente no tiene hijos, ¡aunque creé explícitamente un nodo #text para él!
EDITAR - Feliz Día de Acción de Gracias (para mis compañeros canadienses)
Nota importante, no estoy trabajando desde un conjunto conocido de etiquetas, sino que el programa en el que estoy trabajando utiliza la presencia de un nodo de texto para asignar unJTextField
a la GUI. Es solo que a veces el campo se deja vacío (no nulo sino ""). Cuando almaceno ese campo y luego lo leo de nuevo, la GUI no muestra elJTextField
ya porque no hay nodo de texto. Así que estoy buscando formas de crear un documento XML que cree un nodo de texto incluso si no hay nada en él. Si eso simplemente no se puede hacer con XML, entonces tendré que usar un atributo para marcar las etiquetas que son editables (algo así como sugirió Andrey Breslav) y, por lo tanto, debería tener unJTextField
asignado
Probaré la sugerencia de Mads Hansen de un espacio sin interrupciones.