2010-12-14 8 views
14

Utilizo el siguiente código para analizar el archivo XML.XML String Prsing en Android?

DocumentBuilderFactory factory; 
DocumentBuilder builder; 
InputStream is; 
Document dom; 
try { 
    factory = DocumentBuilderFactory.newInstance(); 
    is = new FileInputStream(strFileName); 
    builder = factory.newDocumentBuilder(); 

    dom = builder.parse(is); 
} 
catch(Exception e){} 

En lugar de archivo XML, hay alguna forma de analizar la cadena.

String xml="<?xml version="1.0"?> <name> Application</name> <demo> Demo </demo> </xml>"; 
+1

Lo que estamos tratando de hacer es muy poco claro. Si ya tiene una cadena, ¿por qué necesitaría un analizador XML? – Ofir

Respuesta

27

Puede convertir su cadena a un InputStream usando ByteArrayInputStream:

String xml ="valid xml here"; 
InputStream is = new ByteArrayInputStream(xml.getBytes("UTF-8")); 

dom = builder.parse(is); 
+0

Gracias por su ayuda – RMK

2

Puede utilizar StringReader:

StringReader sr = new StringReader(xml); 
InputSource is = new InputSource(sr); 
Document d = builder.parse(is); 
+0

¡Gracias por ayudarnos! – RMK

+0

¿Debería ser la segunda línea 'InputSource is = new InputSource (sr);' en su lugar? –

+0

De hecho, debería ser. Eso está corregido, gracias! –