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文本文件第一个字符多出一个问号解决方法

1.创建工具类 import java.io.*; public class UnicodeReader extends Reader { PushbackInputStream interna...
  • datangxiajun
  • datangxiajun
  • 2016年06月07日 16:13
  • 5646

Java 解决采集UTF-8网页空格变成问号乱码

昨天发现,用 HtmlDecode() 去解码后,“ ”不是被解码为半角的空格(ASCII码0x20)而是变成半角问号“?”(ASCII码0x3F)。而且奇怪的是,只有每行前面的空格才会出问...
  • bob007
  • bob007
  • 2014年05月26日 17:43
  • 10217

java 中文乱码 问号

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

网页UTF8转换GBK后出现问号"?"的原因

网页UTF8转换GBK后出现问号"?"的原因  网页编码转换是进行网页解析和处理的第一步。 互联网上越来越多的网页采用UTF-8编码,UTF-8用1到6个字节编码UNICODE字符,收录了超过10...
  • u010229420
  • u010229420
  • 2016年07月28日 15:48
  • 3142

java获取字符串utf-8编码

java获取字符串utf-8编码
  • u010154685
  • u010154685
  • 2016年02月15日 15:14
  • 3260

诡异的?号(UTF-8编码提交空格变成?号)

我的解决办法: /**      * 转换UTF-8编码下空格诡异变成的?号      * @param content      * @return      */     publ...
  • hhrxp373317
  • hhrxp373317
  • 2014年06月03日 09:55
  • 1139

java String 转utf-8编码

/** * Get XML String of utf-8 * * @return XML-Formed string */ public static String getUTF8XML...
  • sunny243788557
  • sunny243788557
  • 2012年11月20日 09:18
  • 144721

Java字符串编码转换UTF-8

package com.cvicse.naba.common.utils; import java.io.UnsupportedEncodingException; /** * ...
  • tian_yan_jing
  • tian_yan_jing
  • 2012年07月16日 17:11
  • 10221

按 字节截取分别以GBK 和 utf-8 编码的 字符串的java程序。

package Other; import java.io.IOException; public class CutByteDemo { /** * @param args * @t...
  • liuhenghui5201
  • liuhenghui5201
  • 2012年12月28日 18:18
  • 3129

java字符串星号、问号匹配问题解决方法

先谈谈?号(问号的处理比较简单)    用for 循环进行逐一比较就可以了。 *号的处理,就比较复杂了。在这里,我采用的是 左迭归思想进行匹配。由于鄙人文学较差,不好对代码进行解释。就请大家自...
  • zzjmay
  • zzjmay
  • 2014年11月06日 13:22
  • 2224
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA从UTF-8编码文件读取字符串时,前边有问号的问题
举报原因:
原因补充:

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