`

JAVA处理带BOM的UTF-8编码文件出错的解决方案

阅读更多

JAVA在处理带BOM的UTF-8编码文件时,可能会出错。

我遇到的一个安全就是在处理UTF-8编码的XML文件时,SAX解析器解析时报错:

Caused by: org.dom4j.DocumentException: Error on line 1 of document  : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog.

at org.dom4j.io.SAXReader.read(SAXReader.java:482)

at org.dom4j.io.SAXReader.read(SAXReader.java:343)

……

 

网上找了一下,有人已经给出了比较完美的解决方案,见下面地址:

 

http://koti.mbnet.fi/akini/java/java_utf8_xml/

分享到:
评论

相关推荐

    Java解决UTF-8的BOM问题

    本文将深入探讨如何使用Java来处理带有BOM的UTF-8文件。 首先,`UnicodeInputStream`和`UnicodeReader`是Java中用于处理Unicode编码流的类。它们是`java.io`包的一部分,提供了对带有BOM的文件进行读取的功能。`...

    IDEA支持带BOM的UTF-8编码文件的解决方案

    2. 如果你是其他版本的IDEA,那么用压缩工具处理你的DEA安装目录下lib文件夹中的ecj-x.x.x.jar文件(名字根据IDEA版本会有所不同),将Util.class替换该jar包目录中\org\eclipse\jdt\internal\compiler\util路径下的...

    java 读取服务器上的某个文件,并解决UTF-8 BOM文件的问号问题

    这个场景中,我们面临的挑战是如何正确处理UTF-8带有BOM(Byte Order Mark)的文件,因为BOM可能会导致文件内容显示为问号或者其他乱码。下面将详细介绍如何解决这个问题。 首先,我们需要理解什么是UTF-8的BOM。...

    IDEA支持带BOM的UTF-8编码文件.rar

    在处理带BOM的UTF-8文件时,IDEA提供了很好的兼容性。通常,BOM可能会导致一些编辑器或程序出现问题,例如在显示文本时出现额外的特殊字符。然而,IDEA能够正确识别并处理这些文件,确保在编辑和查看时不出现异常。...

    gb2312,utf-8,utf-8-bom等编码格式的互相转换

    以上代码片段展示了如何在C#中实现不同编码格式之间的转换,包括GB2312与UTF-8,以及处理带有BOM的UTF-8文件。了解并熟练掌握这些方法,对处理多语言文本数据至关重要。在实际开发中,我们还需要根据具体需求,结合...

    Java避免UTF-8的csv文件打开中文出现乱码的方法

    Java避免UTF-8的csv文件打开中文出现...Java避免UTF-8的csv文件打开中文出现乱码的方法是使用UTF-16LE编码格式,并在文件头部输出BOM。同时,需要考虑Excel版本的兼容性问题,以确保csv文件可以正确地被打开和读取。

    批量utf文件转utf8-bom

    在Windows操作系统环境下,经常需要进行这样的转换,因为某些程序或系统可能更倾向于识别带有BOM的UTF-8编码,尤其是在处理源代码文件或者非英文文本时。不带BOM的UTF-8文件可能会导致乱码或者程序无法正确解析。 ...

    字符编码转换类,支持 ANSI、Unicode、Unicode big endian、UTF-8、UTF-8+Bom互相转换

    "CharsetConv"类提供了一个工具,帮助开发者在ANSI、Unicode(Little Endian和Big Endian)、UTF-8及UTF-8+BOM之间灵活转换,从而避免编码问题带来的困扰。通过深入学习和实践,开发者可以更好地应对各种编码挑战,...

    PB字符串转XML文件,解决PB12.5创建UTF-8文件BOM问题(powerbuilder 12.5)

    解决PB创建UTF-8文件带BOM问题; 2.字段串直接生成XML文件。 由于项目需要,需要字符串转为XML文件,直接用Fileopen进行EncodingUTF8编码后,发现文件实际为UTF-8 BOM编码 问度娘发现有相同问题,但解决方式是利用...

    判断文本文件是否为UTF-8编码

    本资源主要关注如何判断一个文本文件是否采用UTF-8编码。 在Windows系统中,比如Windows 7旗舰版,我们经常使用Notepad.exe(记事本)来查看和编辑文本文件。在编程环境中,有时候我们需要编写代码来检查文件的编码...

    批量去掉UTF-8文件中BOM标示符

    然而,UTF-8编码有一种特殊的形式,即带有BOM(Byte Order Mark)的UTF-8,也被称为UTF-8 with BOM。BOM是一个特殊的字符序列,用于标识文件的编码方式,但在某些情况下,BOM可能会引起问题,例如在某些编程语言中...

    PB9转换utf-8例子

    标题中的“PB9转换utf-8例子”指的是在PowerBuilder 9(PB9)环境下将数据从非UTF-8编码转换为UTF-8编码的一种解决方案。由于PB9本身不直接支持这种转换,开发者通常需要利用外部库或者特定的编程技巧来实现这个功能...

    解决IDEA不支持带BOM的UTF-8编码文件,使支持

    2. 如果你是其他版本的IDEA,那么用压缩工具处理你的DEA安装目录下lib文件夹中的ecj-x.x.x.jar文件(名字根据IDEA版本会有所不同),将Util.class替换该jar包目录中\org\eclipse\jdt\internal\compiler\util路径下的...

    git 修改上传文件编码为utf-8-bom

    当上传文件存在中文时,修改上传文件编码为utf-8-bom

Global site tag (gtag.js) - Google Analytics