说是找不到路径 怎么改

来源:3-2 Dom4j遍历XML

XXXXg

2019-09-28 13:52:43

package com.imooc.dom4j;


import java.util.List;


import org.dom4j.Attribute;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;


public class hrReader {

public void readXml() {

String file="/User/12523/Desktop/xml/src/hr.xml";

//SAXReader类是读取XML文件的核心类,用于将XML解析后以树的形式保存在内存中。

SAXReader reader=new SAXReader();

try {

Document document=reader.read(file);

//获取XML文档的根节点,即hr标签

Element root=document.getRootElement();

//获取所有的employee标签[elements方法用于获取指定的标签集合]

List<Element>  employees=root.elements("employee");

for(Element employee:employees){

//element方法用于获取唯一的子节点对象

Element name=employee.element("name");

//getText方法用于获取标签文本值

String empName=name.getText();

System.out.println(empName);

//elementText用于获取子节点的文本

System.out.println(employee.elementText("age"));

System.out.println(employee.elementText("salary"));

Element department=employee.element("department");

System.out.println(department.addElement("dname").getText());

System.out.println(department.addElement("address").getText());

//attribute获取属性

Attribute att=employee.attribute("no");

System.out.println(att.getText());

}

} catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void main (String[] args){

hrReader hd=new hrReader();

hd.readXml();

}

}

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hr SYSTEM "hr.dtd">

<!-- 人力资源管理器 -->

<hr>

  <employee no="3309">

    <name>张三</name>

    <age>31</age>

    <salary>4000</salary>

    <department>

       <dname>会计部</dname>

       <address>xx大厦-B103</address>

    </department>>

  </employee>

  <employee no="3310">

    <name>李四</name>

    <age>23</age>

    <salary>3000</salary>

    <department>

       <dname>工程部</dname>

       <address>xx大厦-B104</address>

    </department>>

  </employee>

</hr>



写回答

1回答

好帮手慕小班

2019-09-28

同学你好,这里是没有获取到具体的桌面路径吧,同学可以打开计算机,找到桌面,右击鼠标,点击属性

http://img.mukewang.com/climg/5d8f0bb3093b272602780502.jpg

打开属性,就可以看到桌面的具体路径啦,例如:

http://img.mukewang.com/climg/5d8f0c04097e9fd103660382.jpg

这样同学在file中写入对应的路径下的文件,就可以找到啦。

2、在遍历输出对象内容时,注意element方法用于获取唯一的子节点对象,所以遍历输出对象,不要使用addElement方法,修改建议如下:http://img.mukewang.com/climg/5d8f0c7e095ae78607440323.jpg

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

0

0 学习 · 9666 问题

查看课程