Ler XML a partir de uma String

5 respostas
PadrE

Pessoal,

Alguem ai sabe onde tem um tutorial pra ler XML de uma String ??

Achei alguns, mas todos sobre com ler um arquivo usando o DOM…

Eu queria saber como faço pra ler uma variável String com tag’s XML… tem alguma classe pra isso, ou tem q ser na raça mesmo ??

vlw !

5 Respostas

cv1

Todas as APIs de XML que eu conheco leem a partir de InputStreams e Readers, nao necessariamente de arquivos - vc pode acessar uma String como se fosse um InputStream usando o ByteArrayInputStream :wink:

PadrE

Vlw cv…

Vou fazer uns testes aki…

PadrE

Pessoal...

To tentando ler um XML a dentro de uma variavel String... to tentando fazer assim..

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();

Document strXML = db.parse(xml);

E ta dando erro de Protocol na ultima linha...
Eu vi que o metodo "parse" converte uma string para um documento... mas n ta rolando...

Usando o ByteArrayInputStream tb n consegui... mas tb n insisti tanto depois que vi o método parse...

O que devo fazer ?

vlw's !

PadrE

Ae cv.. deu certo o usando o ByteArrayInputStream!!!

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
ByteArrayInputStream is = new ByteArrayInputStream(xml.getBytes());

Document strXML = db.parse(is);

Node raiz = strXML.getFirstChild();

NodeList nlConsulta = raiz.getChildNodes();

Desse jeito to conseguin pegar os dados do xml... mas agora ta dando um problema na hora de pegar esses dados..

tipo.. ta aparecendo "[#text: 1]" no lugar do valor .. que eh apenas "1"

ta indo.. hehe

PadrE

Opa…

Resolvido… o problema estava em usar o
getFirstChild()

no lugar de

eAux.getTextContent()

Agora deu certo… vlw ae cv =]

fui !

Criado 16 de abril de 2006
Ultima resposta 23 de abr. de 2006
Respostas 5
Participantes 2