主要代码参考http://jaczhao.iteye.com/blog/1498220一文中所粘贴的代码,但是原作者不详
使用这一代码时,有可能遇到两个问题,一是编码有问题报错,二是提示有未知的protocol。
对于编码问题,在建立SAXReader之后,添加一句:
reader.setEncoding("GBK");
其中GBK为编码集,可以换成其他。通过这样设定之后不在报错。
对于提示“unknown protocol”异常的情况,是因为直接将包含中文字符的路径传给reader。解决方法为先预读取:
File tempfile=new File(file);
再将这个临时文件传入reader:
Document doc = reader.read(tempfile);