pessoal, gostaria de um tutorial muito simples de leitura de xml pelo java, estou procurando vários, mas é necessário criar várias classes e ainda estou um pouco perdido, quem tiver um link de algo mais simples, agradeço pela atenção!!!
obrigado!!!
Horácio
Bom, como você não especificou nada, vai qualquer um mesmo
Tendencioso? Eu?? Imagina…
pessoal!! em primeiro lugar, muito obrigado pela atenção!!!
só agora puder ver com mais atenção as resposta, mas acabei encontrando enquanto isso, outro processos para ler xml…
estou vendo este, que não apresentou erros enquanto adaptava:
public void XML(){
try {
File fXmlFile = new File("producao.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(fXmlFile);
//optional, but recommended
//read this - http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("staff");
System.out.println("----------------------------");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("\nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
System.out.println("Staff id : " + eElement.getAttribute("guest"));
System.out.println("First Name : " + eElement.getElementsByTagName("fname").item(0).getTextContent());
}
}
} catch (Exception e) {
}
}
como disse, ele não deu erro, porém, não retorna nata no system out print…agora, quero saber se ele está certo, em relação ao xml buscado…que é o seguinte:
<guestbook>
<guest>
<fname>Terje</fname>
<lname>Beck</lname>
</guest>
<guest>
<fname>Jan</fname>
<lname>Refsnes</lname>
</guest>
<guest>
<fname>Torleif</fname>
<lname>Rasmussen</lname>
</guest>
<guest>
<fname>anton</fname>
<lname>chek</lname>
</guest>
<guest>
<fname>stale</fname>
<lname>refsnes</lname>
</guest>
<guest>
<fname>hari</fname>
<lname>prawin</lname>
</guest>
<guest>
<fname>Hege</fname>
<lname>Refsnes</lname>
</guest>
</guestbook>
estou chamando assim na classe main
XML xml = new XML();
xml.XML();
eu estou bem cansado, mas acho que o dom está certo…mas gostaria de uma ajuda de vocês para resolver esse problema…
bom, galera, é isso …mais uma vez, muito obrigado pelas dicas vou ver cada uma com calma, prometo!!
sem mais!!
obrigado mesmo pela força, pessoal!!
Grande abraço a todos!!
Horácio
Olá,
Quebrei muito a cabeça para fazer uma integração entre JSP e Android via XML, tentei fazer mais ou menos como você esta tentando e no final consegui porem o codigo ficou grande e pouco funcional.
Depois um amigo indicou a Jackson JSON http://jackson.codehaus.org/ e vou te falar por experiencia propria, essa API é uma verdadeira mão na roda, recomendo fortemente utiliza-la.
abraços.
Eu tenho bastante experiência no assunto, e também te indico a jackson api.
Dica de tutoriais:
Manipulando Arquivo XML ? Parte I: API Nativa
Manipulando Arquivo XML ? Parte II: JDOM
Manipulando Arquivo XML ? Parte III: XStream
XML ? Trabalhando com JAXB
pessoal, boa tarde!! em primeiro lugar obrigado pelas respostas e dicas, andei vendo algumas, bem interessantes, diga-se de passagem…
porém, voltando ao meu código, notei que acabei cometendo um erro…é que esse xml está em um dominio aqui da empresa(por questões da empresa, eles querem que omitam esses dados durante o processo de desenvolvimento…)enfim, acabei apagando a url, hoje pela manhã, testei e vi que funcionou aqui, porém, por causa da url…o código em si, está legal…só apresenta erro mesmo no quando coloco a url completa…enfim…qual método que posso chamar para fazer com que o programa acesse o site da empresa e localize o xml???
mais uma vez, peço desculpas pelo meu erro!!!
obrigado pela atenção!!!
Horácio