以下是我的XML 文件,我想取出rdf:ID后面的值,该怎么取??? 谢谢 !!!!
我用 getAttributeValue("ID") 和getAttributeValue("rdf:ID") 都不行,返回null.<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE uridef [
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns">
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema">
]>
<rdf:RDF
xmlns:rdf="&rdf;#"
>
<process:AtomicProcess rdf:ID="bookHotel">
<service:describes rdf:resource="#bookHotelservice"/>
</process:AtomicProcess>
</rdf:RDF>
我用 getAttributeValue("ID") 和getAttributeValue("rdf:ID") 都不行,返回null.<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE uridef [
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns">
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema">
]>
<rdf:RDF
xmlns:rdf="&rdf;#"
>
<process:AtomicProcess rdf:ID="bookHotel">
<service:describes rdf:resource="#bookHotelservice"/>
</process:AtomicProcess>
</rdf:RDF>
List ls = root.getChildren();// 注意此处取出的是root节点下面的一层的Element集合
Element body = (Element) ls.get(0);
Element response = (Element) body.getChildren().get(0);就是这样一层一层的读取下去
我用 getAttributeValue("ID") 和getAttributeValue("rdf:ID") 都不行,返回null. <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE uridef [
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns">
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema">
]>
<rdf:RDF
xmlns:rdf="&rdf;#"
>
<process:AtomicProcess rdf:ID="bookHotel">
<service:describes rdf:resource="#bookHotelservice"/>
</process:AtomicProcess>
</rdf:RDF>
智力没问题看个10分钟搞定
资料自己上网查
一堆一堆的
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;public class XmlReader {
public static void main(String[] args) throws FileNotFoundException, JDOMException, IOException{
String xmlpath = "G://test.xml";
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build(new FileInputStream(xmlpath));
Element root = doc.getRootElement();
List<Element> cells = root.getChildren();
for(Element cell : cells){
List<Attribute> attributes = cell.getAttributes();
for(Attribute attribute : attributes){
String v1 = attribute.getValue();
System.out.println(v1);
}
}
}
}
The prefix "process" for element "process:AtomicProcess" is not bound.
我将xml文件改写成:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE uridef [
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns">
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema">
]>
<rdf:RDF xmlns:rdf="&rdf;#">
<AtomicProcess rdf:ID="bookHotel">
<describes rdf:resource="#bookHotelservice" />
</AtomicProcess>
</rdf:RDF>这样上面的代码就可以查到。以上仅作参考。