jaxb读有BOM的XML文件问题

一开始找了半天没找到什么原因,读文件就报错:

Content is not allowed in prolog

后来发现是文件是UTF-8带BOM和不带BOM的问题

问题就好解决了,直接读带BOM文件的时候去掉第一个字符就解决了。

StringReader reader = new StringReader(xml.substring(1));
return (T) createUnmarshaller().unmarshal(reader);

详见:

http://www.rgagnon.com/javadetails/java-handle-utf8-file-with-bom.html

原文地址:https://www.cnblogs.com/demonrain/p/4991510.html