unicode utf-8 gb18030 gb2312 gbk各种编码对比

Unicode、UTF-8、GB2312、GBK和GB18030都是用于将文本数据编码成二进制数据进行传输和存储的标准。

Unicode

Unicode是一种贯穿始终的字符集标准,它在不同的编码方式下可以翻译成不同的二进制数据。Unicode对于所有的文字都有唯一的编码,包括英文、中文、拉丁文、凯尔特文等等世界上所有的文字。Unicode 编码是一种固定的编码方式,每个字符都以两个字节的方式来表示。但是,这种编码方式对于只表示小写英文字母,数字和标点符号的文本来说,会浪费很多字节的空间。

UTF-8

UTF-8是一种变长编码方式,它可以根据字符所处的范围来调整编码方式,每个字符可以用1到4个字节进行编码。这种编码方式可以表示所有的Unicode字符,而且对于只包含英文字母、数字、标点符号的文本,采用UTF-8编码后可以节约存储空间。

GB2312

GB2312是中国的汉字编码标准,它使用两个字节来表示一个汉字,可以表示7425个常用汉字和其它符号。

GBK

GBK是GB2312的扩展版本,是国家标准,也是Windows系统默认使用的中文编码。GBK编码使用2个字节来表示中文字符,可以表示21003个汉字和其它符号,包括少数民族汉字和日韩汉字。

GB18030

GB18030是中华人民共和国国家标准GB 18030-2005《信息技术 中文编码字符集》,是现阶段最新的中文内码标准。GB18030支持Unicode标准,同时兼容GB2312和GBK。GB18030最大的特点是支持4个字节的编码,可以表示包括外国字符在内的所有字符。

综上所述,UTF-8是一种通用的编码方式,可以表示所有的Unicode字符;GB2312和GBK是中文编码标准,用于表示汉字和简体中文符号;GB18030是最新的中文编码标准,支持四个字节的编码体系,能够表示包括外国字符在内的所有字符。

下面是两个编码转换的示例:

示例一

有一个包含中文字符的文本文件,其编码格式是GBK。现在需要将该文件转换为UTF-8编码。

  1. 首先使用记事本打开该文件
  2. 选择“文件” -> “另存为”菜单项
  3. 在编码格式中选择UTF-8
  4. 保存即可

示例二

有一个内部编码为UTF-8的网页,其中包含一些特殊的字符,显示时会出现乱码。现在需要将这些特殊字符转换为中文字符。

  1. 打开这个网页
  2. 在浏览器中打开F12开发者工具控制台
  3. 输入以下命令:

decodeURIComponent("中文")

其中参数 “中文” 为需要转换的编码内容,这个值可以根据实际情况进行替换。

  1. 在控制台中按回车键,可以看到此时返回的结果已经是中文文本了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:unicode utf-8 gb18030 gb2312 gbk各种编码对比 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 图片路径中含有中文在jsp下不能正常显示的原因及解决

    当图片路径中含有中文字符时,若在jsp页面中直接引用该路径,可能导致图片无法正常显示。这是因为URL是英文字符编码的,中文字符在URL中必须进行编码,如果不编码,就出现了上述问题。 为了解决这个问题,我们可以采取以下两种方法: 1. 对中文字符进行编码 使用URLEncoder对包含中文字符的字符串进行编码,然后将编码后的字符串作为图片路径。示例代码如下: …

    Java 2023年6月15日
    00
  • mybatis分页绝对路径写法过程详解

    下面是关于”mybatis分页绝对路径写法过程详解”的完整攻略: 1.什么是Mybatis分页 Mybatis分页是指在数据库中查询出一批数据,然后将这批数据分页展示到页面上的一种技术。对于大数据量的系统来说,分页功能显得尤为重要。 2.Mybatis分页的实现 Mybatis分页有两种方式实现:传统方式和使用插件方式。这里重点讲解使用插件方式实现Mybat…

    Java 2023年6月15日
    00
  • Tomcat 启动错误(8080端口被占用)处理方法

    这里是针对Tomcat启动错误(8080端口被占用)处理的完整攻略。请按以下步骤操作: 1. 查找占用8080端口的进程 打开终端或命令提示符,输入以下命令: Windows netstat -ano | findstr 8080 MacOS/Linux sudo lsof -i :8080 以上命令会列出占用8080端口的进程PID。例如: TCP 127…

    Java 2023年5月19日
    00
  • Java输入输出流的使用详细介绍

    Java输入输出流的使用详细介绍 Java输入输出流是处理输入输出数据的重要组成部分。它们用于读取和写入二进制和字符数据。本文将介绍Java输入输出流的使用,包括字节输入流和字符输入流、字节输出流和字符输出流、以及使用示例。 字节输入流和字符输入流 Java提供了两种类型的输入流:字节输入流和字符输入流。以下是它们的区别: 字节输入流:通过字节输入流读取的数…

    Java 2023年5月20日
    00
  • Java中Gson的使用详解

    Java中Gson的使用详解 Gson是Google提供的一种Java序列化/反序列化库,可让Java对象与JSON序列进行转换。Gson可以从 JSON 中读取 Java 对象,也可以将 Java 对象转换到 JSON 中。因此,Gson可以轻松地将Java对象序列化为JSON格式的字符串,也可以将JSON格式的字符串反序列化为Java对象。 Gson基础…

    Java 2023年5月26日
    00
  • JSP 开发中过滤器filter设置编码格式的实现方法

    让我来为大家详细讲解一下“JSP 开发中过滤器filter设置编码格式的实现方法”的完整攻略。 一、JSP 过滤器 JSP 过滤器是 Servlet 编程中的一个组件,它可以在 Servlet 执行之前或之后拦截 HTTP 请求和响应,对它们进行处理和操作。过滤器通常用于实现可重用的通用功能,如日志记录、性能监测、安全过滤等。 二、为什么要设置编码格式 在 …

    Java 2023年5月20日
    00
  • Springboot+hibernate实现简单的增删改查示例

    现在我将详细讲解如何用Springboot和Hibernate实现一个简单的增删改查示例,示例将包括两个部分。 简介 Springboot是一个开源的Java开发框架,可以帮助开发者快速构建高效、可扩展的web应用程序。而Hibernate则是一个Java持久化框架,通过ORM(对象关系映射)的方式来实现对象和关系数据之间的映射。通过结合使用Springbo…

    Java 2023年5月19日
    00
  • 什么是受检异常?

    什么是受检异常? 在Java中,对于可能会导致程序错误的代码,我们有时会在代码中使用异常机制进行处理,使得程序在运行时遇到问题时可以从异常处理代码块中恢复,继续执行后面的程序。而受检异常(Checked Exception)就是其中一种异常类型,它需要在代码中进行显式的处理,否则编译时就会报错。 受检异常的特点 受检异常与非受检异常(Unchecked Ex…

    Java 2023年4月27日
    00
合作推广
合作推广
分享本页
返回顶部