java 字符串编码

new String(bytes[],"gb2312");把字节数组按"gb2312"解码成unicode字符串。

 String.getBytes("gb2312");把unicode字符串编码成gb2312的字节流。

1。java   .class类的编码为:unicode;

2。windows 默认的编码为:中文:gb2312;  英文:iso8859;

3。什么叫做解码:

     s = new String(bytes[],"iso8859_1");

      将键盘字节输入流中的每个字节读取到一个字节数组中,然后将字节数组中的数据当作某种本地字符集码转换成Unicode码的字符串,这个过程叫解码。

4。什么叫做编码:

String.getBytes("gb2312");java 类内的unicode 字符串的数字,转换成gb2312的编码的数字,并存放到字节数组中。

      将unicode码的字符串中的每个字符数字,转换成该字符在指定的字符集下的数字,叫做编码。

5、

  String s1 = "李辉";//s1------〉unicode编码,所有的程序中的字符串均为"unicode";
    s = new String(s1.getBytes("gb2312"),"iso8859_1");//s1 系统默认的gb2312编码,然后用
//    java.getBytes("gb2312")进行解码,
   str = new String(s.getBytes("iso8859_1"),"gb2312");
   System.out.println("=========="+str);

先将字节数组编码成字符串,以后还可以将这个字符串右反响编码成最初的字符数组。但先编码成字节数组,却比一定能够解码成最初的字符串。因为unicode按iso8859_1

编码后会存在字节丢失。

    System.out.println("=========="+new String(s1.getBytes("iso8859_1"),"gb2312"));

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值