1
即时尝试解析XML文件,但它不会打印属性值。我不知道如何从手机Java Dom getAttribute
try { String subor = "Noviny.xml";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(subor);
System.out.println("----------------\n");
NodeList nodelist = document.getElementsByTagName("Author");
NodeList nodelist1 = document.getElementsByTagName("Article");
for(int i = 0; i < nodelist.getLength(); i++) {
Node uzol = nodelist.item(i);
if (uzol.getNodeType() == Node.ELEMENT_NODE)
{
Element element = (Element) uzol;
System.out.println("Id:" + element.getElementsByTagName("Id").item(0).getTextContent() + "\n");
System.out.println("Name:" + element.getElementsByTagName("Name").item(0).getTextContent() + "\n");
System.out.println("Email:" + element.getElementsByTagName("Email").item(0).getTextContent() + "\n");
System.out.println("typ: " + element.getAttribute("typ") + "\n");
System.out.println("phone:" + element.getElementsByTagName("phone").item(0).getTextContent() + "\n");
System.out.println("typ: " + element.getAttribute("typ") + "\n");
System.out.println("sal: " + element.getElementsByTagName("sal").item(0).getTextContent() + "\n");
}
catch (Exception e) {
e.printStackTrace();
}
和XML
<Noviny>
<Author>
<Id>1</Id>
<Name>first</Name>
<Email>[email protected]</Email>
<phone typ="mobil">09443916565</phone>
<sal>500</sal>
</Author>
<Author>
<Id>2</Id>
<Name>second</Name>
<Email>[email protected]</Email>
<phone typ="pevna">094415665465</phone>
<sal>1000</sal>
</Author>
还有一件事属性类型:NIS有可能只是打印XML文件(的System.out.println)树表示?
谢谢
所以我需要一个更多的循环与电话nodelist? – ivanz 2013-04-30 19:24:33
@sevdah:不,不一定 - 这取决于您是否期待多个“phone”元素。 (您目前的代码只提取一个,所以你可以在这里做同样的事情......) – 2013-04-30 19:25:38
每个作者的一个手机元素。我不知道如何调用该元素的getattribute方法.... – ivanz 2013-04-30 19:32:05