to tentando ler um xml “ISO-8859-1” com o DOM, mas encontra erro quando tem um caracter com acentuacao…
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
File file = new File(arquivo);
Document doc = db.parse( file );
Element elem = doc.getDocumentElement();
NodeList nl = elem.getElementsByTagName( "TESTE" );
Element tag = (Element) nl.item( 0 );
System.out.println( tagOrcamento.getAttribute( "NOME" ) );
se o nome tem um caracter acentuado da erro, se nao, le normalmente!
o q faço???
thingol
Janeiro 28, 2008, 4:43pm
#2
Pegue esse XML, salve-o em um arquivo, e veja se ele está corretamente formatado, usando o Internet Explorer ou o Mozilla Firefox. Normalmente esse problema dá quando o arquivo foi mal-formatado.
esta lendo tranquilamente no IE…
thingol
Janeiro 28, 2008, 4:48pm
#4
Ele começa por algo parecido com <? xml version="1.0" encoding="ISO-8859-1" ?>
Se não estiver começando assim, está errado.
começa exatamente asism…
creio que o problema esteja em setar o ENCODING antes de ler o arquivo,
mas nao sei onde setar
achei o setXMLVersion()
mas nada de setXMLEncoding()
Como setar o Enconding , utilizando JDOM
XMLOutputter xout = new XMLOutputter();
org.jdom.output.Format formatXML = org.jdom.output.Format.getPrettyFormat();
formatXML.setEncoding("ISO-8859-1");
xout.setFormat(formatXML);
Mas este procedimento é no momento de criação do XML atraves do JDOM.
lauronolasco:
vlw
Qnto a leitura do XML , nao tenho ideia de como alterar o enconding
Vc ja tentou alterar no arquivo e depois ler?