org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 前言中不允许有内容。

今天运行一个小demo时,修改了一下要读取的文件,报错如下:

开始读取文件
org.dom4j.DocumentException: Error on line 1 of document  : 前言中不允许有内容。
	at org.dom4j.io.SAXReader.read(SAXReader.java:462)
	at org.dom4j.DocumentHelper.parseText(DocumentHelper.java:286)
	at cn.testData.CalculateScore.call(StudentUtil.java:199)
	at cn.testData.CalculateScore.call(StudentUtil.java:1)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 前言中不允许有内容。
	
文件读取成功,符合要求的数量:8
花费时间:112

感觉是读取的文件有问题,因为之前是可以正常读取的!

后来发现果然是文件有问题,文件的编码格式是:utf-8 + BOM

utf-8+BOM编码格式,后端读取时,第一行是会做编码转换,导致乱码。

下面是解决方案:

用notepad打开,格式改成 “以utf-8无BOM格式编码”即可。

你可能感兴趣的:(异常)