首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

再谈java乱码GBK和UTF-8互转尾部乱码问题分析

解码为一个unicode字符串 String str2=new String(byteArray1,"ISO-8859-1"); System.out.println("转成ISO-8859-1会乱码...String(byteArray2,"UTF-8"); System.out.println("数据没有丢失:"+str3); } 输出: unicode字符串:用户 6 转成ISO-8859-1会乱码...; System.out.println("转成GBK乱码:"+str2); //将GBK编码的unicode字符串转回为byte[] byte[] byteArray2=str2.getBytes...运行结果: unicode字符串:用户 6 转成GBK乱码:鐢ㄦ埛 数据没有丢失:用户 好像没有问题,这就是一个误区。...ISO-8859-1测试结果: unicode字符串:用户名 9 转成GBK乱码:用户名 数据没有丢失:用户名 GBK 测试结果: unicode字符串:用户名 9 转成GBK乱码:鐢ㄦ

3.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

再再谈java乱码GBK和UTF-8互转尾部乱码问题分析(续)

在《再谈java乱码GBK和UTF-8互转尾部乱码问题分析》我们分析了,如果从一个UTF-8 的字节序列,经过 new String(b,"GBK") 的操作,"可能"(与总字节数有关)会破坏数据。...同时,可参考:一段java代码带你认识锟斤拷 GBK字节码用UTF-8解码 来看一段代码: public static void main(String[] args) throws IOException..., ParseException { String str="中国人"; System.out.println(str); byte[] b=str.getBytes("GBK");...小结 先回顾一下前文的结论: 对于任意字节流,使用ISO-8859-1 转为字符串再转回来,是安全的;使用GBK和UTF-8可能会破坏数据。...现在扩展一下,使用GBK可能会破坏数据,损失最后一个字;如果使用UTF-8 可能损失大部分的字。 但这绝不是说UTF-8 是不好的,而是在这个乱码问题出现的时候,UTF-8是最惨烈的。

2.2K30

Linux删除乱码文件的方法

当文件名为乱码的时候,无法通过键盘输入文件名,所以在终端下就不能直接利用rm,mv等命令管理文件了。 我们可以通过以下几种方法删除linux下的乱码文件。...(文件名为乱码) l 方法1 我们知道每个文件都有一个i节点号,我们可以考虑通过i节点号来管理文件。 首先,我们要取得文件的i节点号。这个可以通过ls命令的-i选项获得。...l 方法2 使用cp、mv和rm *的组合间接实现删除所有的乱码文件。 首先,把其他的非乱码命名的文件拷贝到其他的目录。 之后,删除该目录下的所有文件。 最后,把拷贝的文件移回原目录。...适用范围: 方法1:删除单个文件,或逐个删除乱码命名文件。 方法2:适用于乱码文件较多,又需要全部删除的情况。

7.8K80
领券