Lendo XML e encontrando o ID

3 respostas
warley

Olá a todos,

Estou lendo um xml mas eu nao estou conseguindo pegar o ID de uma tag xml. Vejam:

import java.io.*;
import java.util.*;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.xml.sax.*;
import org.w3c.dom.*;

public class Class1 {
    public Class1() {
    }

    public static void main(String[] args) throws ParserConfigurationException, 
                                                  SAXException, IOException {
        Class1 class1 = new Class1();
        
        String str = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><objeto><dado id=\"exigeObservaçao\">SITUção DOS ACESSOS</dado><dado>Teste Teste</dado></objeto>";
        
                
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();   
        DocumentBuilder db = dbf.newDocumentBuilder();   
                
        ByteArrayInputStream is = new ByteArrayInputStream (str.getBytes());
        
        Document strXML = db.parse(is);
        
        System.out.println("Enconding: "+ strXML.getXmlEncoding());
                
        NodeList list = strXML.getElementsByTagName("dado");
                
        for(int i=0; i < list.getLength(); i++){
            
            Node property = list.item(i);
            NamedNodeMap namedNodeMap = property.getAttributes();
            String propertyValeu = property.getTextContent();
                                     
            System.out.println(propertyValeu);
        }
                       
    }

    
}

Alguem tem alguma ideia:

Obrigado.

3 Respostas

Lucas_Cavalcanti

tenta o:

property.getAttribute("id");

deve funcionar…

fantomas

Se vc se refere ao conteúdo do atributo "ID" do seu xml, tente o código abaixo:

if(property.hasAttributes()) {
            	Node n = namedNodeMap.getNamedItem("id");
            	
            	if(n != null) {
            		System.out.println("-->> "+n.getTextContent());
            	}
            }

[]'s

warley

Funciou galera… :wink:

Muito Obrigado!

Criado 6 de agosto de 2008
Ultima resposta 7 de ago. de 2008
Respostas 3
Participantes 3