Problema con JDOM
Hola chicos tiempo sin pasar por aquí.. esta vez les tengo un desafió paraa los mejores pensadores! naah... nito ayuda XD
Pasa lo siguiente, estoy trabajando con jdom generando y leyendo xml y todo "bien". pero en ocasiones me da un pequeño problema...
Document document = new Document(DOC);
String data = "<![CDATA[]]>";// este valor puede cambiar muchas veces, por eso esta en variable
Element CMPS = new Element("CMPS");
Element ID = new Element("ID").setText("123123213");
CMPS.addContent(new Element ("CMP").setAttribute("NB","prueba1").addContent(new Element("VAL").setAttribute("NT","3").setText(data)));
document.getRootElement().addContent(ID);
document.getRootElement().addContent(CMPS);
XMLOutputter xmlOutputer = new XMLOutputter();
xmlOutputer.setFormat(Format.getPrettyFormat());
xmlOutputer.output(document, new FileWriter(xmlFilePath));
System.out.println("XML creado!");
el resultado en el xml es el siguiente :
<DOC>
<ID>123123213</ID>
<CMPS>
<CMP NB="prueba1">
<VAL NT="3"><![CDATA[]]></VAL>
</CMP>
</CMPS>
</DOC>
Mi pregunta y duda es.... por que me sale así? (<![CDATA[]]>:
)
debo darle algun formato especial?
probe con esto:
según leí, eso me transforma mi cadena a binario con el formato especificado. pero no me sirvió aun después de probar con varios formatos.
podrían ayudarme?
Gracias :3
- Inicie sesión o regístrese para enviar comentarios
Re: CDATA vacíos
Utiliza
org.jdom2.CDATA
(oorg.jdom.CDATA
, dependiendo la versión) para secciones de este tipo. Si no tiene contenido, no escribirá nada. No obstante, si deseas que JDOM escribaCDATA
s vacios, tendrás que crear tu propia versión de JDOM. Pero antes de eso, tal vez quieras leer esto.~~~
Perfecto!!
Muchas gracias :D me sirvió mucho!
quedo asi: (por si a alguien mas le sirve)
/*
.
.
.*/
CDATA cdata = new CDATA("");
String data = "aqui va tu texto";
CMPS.addContent(new Element ("CMP").setAttribute("NB","prueba1").addContent(new Element("VAL").setAttribute("NT","3").setContent(cdata.setText(data))));