公司现在做的一项目用的是一产生XSLT的开源软件,而我的工作就是修改这个开源软件 ,费了好大的劲终于在本地的机子上调试成功了,但部署置服务嚣时出现了问题 w3cDOM读取有空格或者中文命名
的文件夹下XML时报错了,始终解决不了。而整个开源的软件都是用W3CDOM,想全部换成其他的方法是不太可能,尝试用JDOM来读取再转化为w3cDOM来处理XML,没想到真有这样的方法!
w3c->jdom
DOMBuilder db = new DOMBuilder();
org.jdom.Document jdomDoc = db.build(w3cDoc);
//System.out.println( jdomDoc .getRootElement().getName());
jdom->w3c
SAXBuilder builder = new SAXBuilder();
org.jdom.Document doc=null;
try {
FileReader in = new FileReader(uri);
doc = builder.build(in);
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
DOMOutputter outputter = new DOMOutputter();
org.w3c.dom.Document w3cDoc=null;
try {
w3cDoc = outputter.output(doc);
} catch (JDOMException e) {
e.printStackTrace();
}
return w3cDoc;
string->w3c
org.w3c.dom.Document XmlUtil.build(String)
w3c->jdom
DOMBuilder db = new DOMBuilder();
org.jdom.Document jdomDoc = db.build(w3cDoc);
//System.out.println( jdomDoc .getRootElement().getName());
jdom->w3c
SAXBuilder builder = new SAXBuilder();
org.jdom.Document doc=null;
try {
FileReader in = new FileReader(uri);
doc = builder.build(in);
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
DOMOutputter outputter = new DOMOutputter();
org.w3c.dom.Document w3cDoc=null;
try {
w3cDoc = outputter.output(doc);
} catch (JDOMException e) {
e.printStackTrace();
}
return w3cDoc;
string->w3c
org.w3c.dom.Document XmlUtil.build(String)