JAVA从UTF-8编码文件读取字符串时,前边有问号的问题

原创 2014年03月06日 16:14:23

最近做java读取一个xml文件模板的时候,发生了一个诡异的问题。就是读出来的字符串,调试的时候显示是正常的,但是真正用的时候或者打印出来的时候,前边有一个问号。?<xml>...</xml>,类似这样。

后来在网上搜了一下,找到这个:http://bugs.java.com/bugdatabase/view_bug.do?bug_id=4508058 对于有dom的UTF-8编码文件时,从jdk1.4开始就会在读取的时候出现这个?了。而且官方明确表示won't fix,所以现在用jdk6的时候仍然存在。

解决办法其实就是改变文件的编码,改成无DOM的UTF-8就OK了。

比如在notepad++里可以选这个:


java读取UTF-8的txt文件发现开头的一个字符问题

最近在处理文件时发现了同样类型的文件使用的编码可能是不同的。所以想将文件的格式统一一下(因为UTF-8的通用性,决定往UTF-8统一),遇见的第一个问题是:如何查看现有文件的编码方式。 在jav...

Java读取文件时第一行出现乱码“?”问号

我们在使用Java在读取文件(txt、dat等)时,如果文件不是utf-8格式的话,读取结果会出现,中文字符变乱码的 情况,所以一般在读取时转为UTF-8格式读取。 但这时会出现一种情况,第一...

java读取UTF-8文本文件第一个字符多出一个问号解决方法

1.创建工具类 import java.io.*; public class UnicodeReader extends Reader { PushbackInputStream interna...

JAVA从UTF-8编码文件读取字符串时,前边有问号的问题

最近做Java读取一个xml文件模板的时候,发生了一个诡异的问题。就是读出来的字符串,调试的时候显示是正常的,但是真正用的时候或者打印出来的时候,前边有一个问号。?...,类似这样。 后来在网上搜了一...

Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法

Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法...
  • jackpk
  • jackpk
  • 2010年06月29日 22:26
  • 44754

Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决

今天导入文件的时候,出现?,经过核查是UTF-8那个BOM的问题,最后经过查找,找了一个比较好的方法解决。 使用一个更强大点的工具类(可以支持UTF-8/UTF-16LE/UTF-16BE/UT...

java 中文乱码 问号

在基于Java的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号。 这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编...
  • pkuyjxu
  • pkuyjxu
  • 2013年03月24日 11:23
  • 20640

windows java读取utf-8编码文件时出现第一个字符为未知字符"?" 的解决方案

个人作为笔记记录在csdn上,暂时也没有对其进行深入了解,只做出处理方案。 在windows 环境下,使用java文件流读取文本文件时,会出现第一个字符为未知字符"?" 其他字符完整。google之,...

java读取UTF-8文本文件第一个字符多出一个问号解决方法

转载来源:http://akini.mbnet.fi/java/unicodereader/ 转载至:http://akini.mbnet.fi/java/unicodereader/Unicode...

一上午搞java编码问题,写了一个将批量文件编码转为UTF-8的小程序(有BUG-.-!)

/*Talk is cheap , show me the Code .*/ import java.io.*; /** * 将文件的字符编码转为UTF-8 * 有个BUG ,就是转换过的文件 ,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA从UTF-8编码文件读取字符串时,前边有问号的问题
举报原因:
原因补充:

(最多只允许输入30个字)