-
2006年10月19日
Java中对有BOM头的UTF-8文件的处理
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
在用记事本之类的程序将文本文件保存为UTF-8格式时,记事本会在文件头前面加上几个不可见的字符(EF BB BF),就是所谓的BOM(Byte Order Mark)。JDK1.5之前的Reader都不能处理BOM,解析这种格式的xml文件时,会抛出异常:Content is not allowed in prolog. 据说JDK1.6已经解决了这个bug。(参考http://www.uuzone.com/blog/mao/98921.htm )
http://fireshort.blogbus.com/logs/3617779.html
在未使用JDK1.6之前,解决办法有三:
1、不要使用有BOM头的xml文件,就是说不要用记事本保存utf-8的xml文件,editplus就很好用;
2、使用这位仁兄的unicodereader,可以正确处理有BOM的xml文件:
http://koti.mbnet.fi/akini/java/unicodereader/
3、如果是用Xerces解析器,直接传Stream给Xerces,而不是传Reader,Xerces就可以正确的处理了。总之不要用Reader就好了。随机文章:
用Java进行LDAP编程的方式 2007年01月23日j2ee系统与rtx的整合实现 2006年07月27日commons-fileupload中文乱码问题的解决 2005年12月20日javadbf中文问题的解决 2005年10月19日操作dbf的类库 2005年09月08日
收藏到:Del.icio.us
引用地址:






评论
联系QQ:350108803,联系电话:15825977799
公司主页:http://158259.jimdo.com/
加QQ马上观看3万空白证件样本,看质量满意后选择您需要办理的证件,传照片资料到邮箱,只需要付少量定金确保您购买我们的产品,电话确认后,马上六小时内制作完毕,清晰视频摄像或扫描,质量满意再付款。立马附上两张彩票和奖品发航空特快专递。部分城市当日拿证,其他城市1-3天拿证到手,包返包退.
诚信看得见!无一列违规操作!!!!!!退货包退款!!!