当前位置: 首页 > news >正文

政府机关网站制作站长工具网站查询

政府机关网站制作,站长工具网站查询,网站开发多少钱农民,沈阳网站开发公司Java中文乱码浅析及解决方案 一、GBK和UTF-8编码方式二、idea和eclipse的默认编码方式三、解码和编码方法四、代码实现编码解码 五、额外知识扩展 一、GBK和UTF-8编码方式 如果采用的是UTF-8的编码方式,那么1个英文字母 占 1个字节,1个中文占3个字节如果…

Java中文乱码浅析及解决方案

  • 一、GBK和UTF-8编码方式
  • 二、idea和eclipse的默认编码方式
  • 三、解码和编码方法
  • 四、代码实现
    • 编码
    • 解码
  • 五、额外知识扩展

一、GBK和UTF-8编码方式

  • 如果采用的是UTF-8的编码方式,那么1个英文字母 占 1个字节,1个中文占3个字节
  • 如果采用GBK的编码方式,那么1个英文字母 占 1个字节,1个中文占2个字节

二、idea和eclipse的默认编码方式

其实idea和eclipse的默认编码方式是不一样的哦。
idea默认的编码方式是:UTF-8
在这里插入图片描述
eclipse默认采用的编码方式是GBK

三、解码和编码方法

1、java中编码的方法

  • public byte[] getBytes() 使用默认的编码方式进行编码
  • public byte[] getBytes(Charset charset) 使用指定方式进行编码

2、java中解码的方法

  • public String(byte bytes[]) 使用默认的方式进行解码
  • public String(byte bytes[], String charsetName) 使用指的方式进行解码

四、代码实现

以下代码demo均采用idea开发哦

编码

1、使用默认的编码方式进行编码
看下面这段代码,请猜一猜数组中的元素有几个?

package com.heima.demo;import java.util.Arrays;public class TestDemo {public static void main(String[] args) {String str = "dk你好";byte[] bytes = str.getBytes();System.out.println(Arrays.toString(bytes));}
}

你答对了吗?数组中一共有8个元素,因为idea默认采用的编码方式是utf-8,如果采用的是UTF-8的编码方式,那么1个英文字母 占 1个字节,1个中文占3个字节。我们看一下运行结果

[100, 107, -28, -67, -96, -27, -91, -67]Process finished with exit code 0

如果使用指定的编码方式GBK进行编码呢?我们看一下代码

public class TestDemo {public static void main(String[] args) throws UnsupportedEncodingException {String str = "dk你好";byte[] bytes = str.getBytes("gbk");System.out.println(Arrays.toString(bytes));}
}

答案是:数组元素一共有6个,因为采用的是GBK编码方式,那么1个英文字母 占 1个字节,1个中文占2个字节。
我们看一下运行结果

[100, 107, -60, -29, -70, -61]Process finished with exit code 0

解码

1、使用默认的方式进行解码

package com.heima.demo;import java.io.UnsupportedEncodingException;public class TestDemo {public static void main(String[] args) throws UnsupportedEncodingException {String str = "dk你好";byte[] byte1 = str.getBytes();String res1 = new String(byte1);System.out.println(res1);}
}

运行结果如下:

dk你好Process finished with exit code 0

如果给他加上指定编码方式呢?

package com.heima.demo;import java.io.UnsupportedEncodingException;public class TestDemo {public static void main(String[] args) throws UnsupportedEncodingException {String str = "dk你好";byte[] byte1 = str.getBytes();String res1 = new String(byte1,"gbk");System.out.println(res1);}
}

运行结果

dk浣犲ソProcess finished with exit code 0

我们发现有乱码产生。那为什么呢?因为编码的时候,采用的是默认的utf-8方式,所以解码的时候,也需要使用utf-8进行解码,如果使用gbk就会产生乱码。因为utf-8和gbk对中文所占的字节数是不一样的。

  • 如果采用的是UTF-8的编码方式,那么1个英文字母 占 1个字节,1个中文占3个字节
  • 如果采用GBK的编码方式,那么1个英文字母 占 1个字节,1个中文占2个字节

五、额外知识扩展

1、什么是字符集?
字符集顾名思义,就是用来装多个字符的集合。不同的字符集中字符的个数是不同的,包含的字符也是不同的,甚至对于字符的编码格式也是不同的。

2、什么是字符编码?
计算机中存储信息都是以二进制数表示的,而我们在电脑屏幕上看到的文字、数字、英文、标点符号等都是将二进制数转换过后的结果,按照某种规则,将计算机中的二进制数与某个抽象字符集合一一对应,这就是字符编码。

3、ASCII字符集
ASCII 全称 (American Standard Code for Information Interchange)美国信息交换标准代码,它是基于拉丁字母的一套电脑编码系统,其最初在创建的时候主要是为了显示英语以及一些西欧语言,是国际通用的信息交换使用标准码。ASCII使用了7位二进制来表示128个字符和符号,目前已经停止更新。

4、Unicode字符集
ASCII字符集只包含了128个字符,对于全世界的所有语言来说,并不能容纳下世界上所有的语言。所以Unicode字符集出现了。
Unicode又被称为统一码、万国码,是国际组织制定的用来容纳全世界字符的编码方案。是的,确切的说Unicode是一种编码方案,以实现跨语言、跨平台的文本处理、转换的要求。
但是Unicode只是一种字符与二进制数之间的一种逻辑映射编码,它并没有指定在计算集中应该如何的进行存储。所以此时就需要一种编码格式用来指定Unicode字符集中的字符是如何进行编码的。
在Unicode官方资料中,Unicode编码方式有三种:UTF-8、UTF-16、UTF-32,而其中UTF-8编码成为了现今互联网使用较多的编码方式。

5、GB2312
GB2312编码是第一个汉字编码国家标准,于1980年由中国国家标准总局发布。其中共收录了汉字6763个。但是由于我国的汉字非常多,GB2312收录的汉字不够用了,所以GBK诞生了。GBK包含了GB2312的所有内容的同时还新增了20000多新的汉字,对于一些日常需求已经为完全够用了。

http://www.rdtb.cn/news/21173.html

相关文章:

  • 深圳网站建设设平台推广广告宣传词
  • 外包网站建设价格广点通投放平台登录
  • 东莞专业拍摄做网站照片网址大全名称
  • codeigniter 手机网站开发百度优化
  • 网站备案邮寄资料网站设计与网页制作
  • wordpress点赞插件郑州seo课程
  • 常熟建设设银行网站百度关键词优化曝光行者seo
  • 九江有哪些做网站的公司免费推广
  • wordpress 主题名无锡网站seo顾问
  • wordpress 评论去审核优化大师安卓版
  • 平面设计与网站开发概述郑州关键词排名公司电话
  • 英文网站建设方案 ppt模板360广告推广平台
  • seo首页关键词优化什么是优化师
  • 做网站的ui陕西seo
  • 网站内做关键词连接企业营销策划是做什么的
  • 怎么给自己的网站设置关键词网站推广应该怎么做?
  • 网站建设的实施方式百度视频seo
  • 3d网页游戏平台seo快速软件
  • 四川佳和建设工程网站百度搜索资源平台token
  • 苹果做安卓游戏下载网站好网站建设案例
  • 目前做批发比较好的b2b网站怎么注册百度账号
  • 网站下做二级域名网站排名seo培训
  • 做外贸网站注册什么邮箱推广网站有哪些
  • 德州建设网站公司seo招聘信息
  • 学风建设网站版块郑州网络营销排名
  • 做图的模板下载网站有哪些广州网站优化平台
  • html编辑器的推荐个人网站seo入门
  • 哪个网站做体检预约的b2b网站排名
  • 珠海网站建设多少钱企业如何进行品牌推广
  • 网站服务器基本要素有哪些免费广告网