最近在做一個小項目,使用org.dom4j.DocumentHelper.parseText方法時一直報錯”Nested exception: 前言中不允許有內容",這個parseText解析的內容是從一個文本文件中讀出的.代碼大致如下:
String content = FileUtil.readAllText(filePath); Document document = DocumentHelper.parseText(content);
網上有講到方法是說文本文件的編碼方式有問題,我從UTF-8改為ANSI發現並沒有用,因為里面有中文,以ASNI編碼存儲讀取時會亂碼,經過一番查找才知道在Windows以NotePad編輯的文本文件如果以UTF-8編碼存儲的話,會有一個隱藏的的BOM頭,需要將BOM頭去掉.
接下來就想辦法去掉BOM頭,我參照的鏈接是https://www.cnblogs.com/joshua317/p/8895031.html,
采用的方法是使用EditPlus來編輯該文本文件,在另存里選擇UTF-8不帶 BOM頭的方式即可解決此問題