聚合全网技术文章,根据你的阅读喜好进行个性推荐
java里面怎么去掉�这个字符?
你先别说怎么去,先说他怎么来的
看起来是这个的字符有很多,一般都是乱码,看一下是不是字符编码不统一导致的...
能打的(复制)出来,就能替换掉
你这是编码问题,先解决乱码是如何来的,在查看乱码的编码,然后用Java转换成一样的编码,这样才能从根本解决问题
修改下字符的编码,一般都是utf-8,具体还的再看下
问题是:字符 � 是在那个编码级内定义的?它的编码是多少?
通过记事本,将楼主所列举的字符 � 复制粘贴到字符文档中,然后运行java程序读取此文档。结果发现,在读取到的字符串之中,这个字符一律用 '?' (问号, ascii 码 63) 来显示。如果进一步去掉整个字符串中的问号,即删除 ascii 码为 63 的字符,将字符串再写回文档,不是就达到消除字符 � 的目的了吗? 当然,这样做就会将 "真正的" 问号也除去了。不过可以看看 字符 � 出现 是否有 "规律", 即是否前后有特定的字符串(结构)相伴。 若有"规律", 则仅将符合这种规律的"问号"删除。
如果是不可见字符可以使用 对象.属性.replaceAll("\\p{C}","");
"".replaceAll("\\ufffd", "");
这是因为原来字符是GBK编码的,而你用utf-8编码打开了文件
你先别说怎么去,先说他怎么来的
看起来是这个的字符有很多,一般都是乱码,看一下是不是字符编码不统一导致的...
能打的(复制)出来,就能替换掉
你这是编码问题,先解决乱码是如何来的,在查看乱码的编码,然后用Java转换成一样的编码,这样才能从根本解决问题
修改下字符的编码,一般都是utf-8,具体还的再看下
问题是:字符 � 是在那个编码级内定义的?它的编码是多少?
通过记事本,将楼主所列举的字符 � 复制粘贴到字符文档中,然后运行java程序读取此文档。结果发现,在读取到的字符串之中,这个字符一律用 '?' (问号, ascii 码 63) 来显示。如果进一步去掉整个字符串中的问号,即删除 ascii 码为 63 的字符,将字符串再写回文档,不是就达到消除字符 � 的目的了吗? 当然,这样做就会将 "真正的" 问号也除去了。不过可以看看 字符 � 出现 是否有 "规律", 即是否前后有特定的字符串(结构)相伴。 若有"规律", 则仅将符合这种规律的"问号"删除。
如果是不可见字符可以使用 对象.属性.replaceAll("\\p{C}","");
这是因为原来字符是GBK编码的,而你用utf-8编码打开了文件