java学习笔记14

今天学习编码,大概我们所用的编码,比较常用的就三中gbk ,utf-8,gb2312,但是gb2312跟gbk差不多只不过gbk比gb2312中文字符更加的多,

首先学习编码

编码就是将字符变成字节数组

getBytes()  getBytes(charsetName);

public static void EncodeDemo() throws IOException{//编码要抛出异常

String s="你好";

//编码

byte[] b=s.getBytes();

System.out.println(Arrays.toString(b));

//解码

String str=new String(b);

System.out.println(str);

  //系统默认的编码是gbk 但是如果用ios8859-1解码的话,会出现乱码

String s1="你好";

byte[] b1=s1.getBytes("gbk");

System.out.println(Arrays.toString(b1));


//解码用iso8859-1

String str=new String(b1,"iso8859-1");

System.out.println(str);//输出为????

       //解决办法:我们先将乱码编码

byte[] b2=str.getBytes("iso8859-1";);

//然后解码后再用gbk解码

String s3=new String(b2,"gbk");

   //但是如果将上面的iso8859-1改成utf-8的话,用同样的方法,依然是乱码,因为gbk,utf-8都是中文的编码

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值