Algo básico pero no menos importante es saber como leer un XML a partir de una cadena de caracteres. A continuación les propongo el código:
byte[] xml = "<miXml propiedad1=\"Hola\" propiedad2=\"Mundo\" />".getBytes(); Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse( new ByteArrayInputStream( xml ) ); NodeList e = doc.getElementsByTagName("miXml"); System.out.println( e.item(0).getAttributes().getNamedItem("propiedad1").getNodeValue()); System.out.println( e.item(0).getAttributes().getNamedItem("propiedad2").getNodeValue());
Las librerías que utilicé son:
import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.DOMException; import org.w3c.dom.Document; import org.w3c.dom.NodeList; import org.w3c.dom.Node; import org.w3c.dom.Element; import org.xml.sax.SAXException;
Hola buen día disculpe alguien sabe como leer un archivo xml pero sin librerias, que sea con pilas colas, arreglos o como sea pero que no usen librerias de xml Alguien sabes.
¿Que te parece asi?
private void leerXML(Node nodo) {
NodeList hijos = nodo.getChildNodes();
for (int i = 0; i < hijos.getLength(); i++) {
Node hijo = hijos.item(i);
String s = hijo.getParentNode().getNodeName();
if (hijo.hasChildNodes()) {
leerXML(hijo);
} else {
if (s.equals("primerElemento")) {
System.out.print(hijo.getNodeValue() );
} else if (s.equals("segundoElemento")) {
System.out.print(hijo.getNodeValue()");
} else if (s.equals("tercerElemento")) {
System.out.println(hijo.getNodeValue());
}
}
}
}
public void imprimirXML() {
File xmlFile = new File ("xml");
try{
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(xmlFile);
Node raiz = doc.getFirstChild();
leerXML(raiz);
}catch (Exception e){
e.printStackTrace();
}
}
hola, me pueden ayudar, a renombrar un xml, pero el nombre debe ser de ciertos elemntos que se encuentran dentro del xml?
ya llegue hasta obtener los elementos (4) que necesito para renombrar el archivo, pero a la hora de renombrar me indica un error que dice, el String cannot be converted to File