ERROR:使用dom4j解析xml文件遇到中文路径问题


在使用dom4j解析xml文件的时候,使用以下代码来解析含有中文的路径的时候,会报错:

SAXReader reader=new SAXReader();

Documentdom=reader.read(xmlFile);

Element root =dom.getRootElement();

 

报错:org.dom4j.DocumentException: no protocol: ResetMapXML\设定自稳模式参数.xml Nested exception: no protocol:ResetMapXML\设定自稳模式参数.xml

是指使用此包含中文的路径时候,找不到根文件来解析;

解决办法一

文件保存的时候都是用utf-8编码来统一保存,这样就可以支持所有格式;

解决办法二

使用如下代码:

SAXReader reader=new SAXReader();

Document dom=reader.read(new File(xmlFile));

Documentdom=reader.read(xmlFile);

转换成文件流即可解析,即可解析中文路径;

解决方法三

使用如下代码:

SAXReader reader=new SAXReader();

InputStream ifile = new FileInputStream(xmlFile);

InputStreamReader ir = new InputStreamReader(ifile,"UTF-8");

Document dom = reader.read(ir);

root=dom.getRootElement();

转换成指定编码的IO流,即可解析中文路径和中文文件名;

你可能感兴趣的:(【ERROR】)