老师这是什么原因 是路径的问题吗?
来源:3-2 Dom4j遍历XML
慕桂英6985738
2019-11-05 07:18:13
package com.imooc.dom4j;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class HrReader {
public void redeXml() {
String file ="c:/用户/Administrator/eclipse-workspace/xml/src/hr.xml";
//SAXReader类是读取XML文件的核心类,用于将XML解析后以“树”的形式保存在内存中
SAXReader reader =new SAXReader();
try {
Document document=reader.read(file);
//获取XML文档的根节点,即hr标签
Element root =document.getRootElement();
//elements方法用于获取指定的标签合集
List<Element> employees =root.elements("employee");
for(Element employee :employees) {
//element方法用于获取唯一的子节点
Element name=employee.element("name");
String empName =name.getText();//getText()用来获取标签文本
System.out.println(empName);
}
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
HrReader reader=new HrReader();
reader.redeXml();
}
}1回答
同学你好。遇到的报错是什么呢?
1、如果遇到的是org.dom4j.DocumentException: unknown protocol: c
说明没有解析出c是本地磁盘路径,需要在前面追加“file:///” 表明是本地磁盘路径。
2、如果遇到 org.dom4j.DocumentException: C:\用户\Administrator\eclipse-workspace\xml\src\hr.xml (系统找不到指定的路径。)
说明系统找不到这个路径,将路径拷贝到系统文件浏览器的地址栏,可以看到虽然显示为“用户”:

但是复制的时候是Users:

所以将路径也修改为Users
3、综上,使用如下地址:
String file ="file:///C:/Users/Administrator/eclipse-workspace/xml/src/hr.xml";
如果解答了同学的疑问,望采纳~
祝学习愉快~
相似问题