java编码问题

首选需要理解unicode:为了把全世界人民所有的所有的文字符号都统一进行编码,于是制定了UNICODE标准字符集,没有什么编码规则,只是编码和字符一一对应,在java内存中,string类型的字符就是以unicode的形式存在内存中,所以,在debug的时候,string既不属于gbk,也不属于utf-8和其他的编码格式。

知道这个问题以后,很多编码问题就可以迎刃而解:

既然知道java内存中是用unicode存储字符,可以得出,gbk编码:str.getBytes("GBK"),就是将unicode类型的char数组转化成对应编码类型的byte数组,而new String(byte,"UTF-8")就是将对应编码GBK类型的数组,转化成uniCode格式,也就是我们的编译器理解的格式。

在编写程序时最好将编码格式显示的设定好,这样可以确定的得出程序提供给外界的流的编码格式,而java的默认编码格式,经工作中验证,就是java在启动时main函数所在文件的编码格式。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值