常用字符编码及乱码分析[通俗易懂]

常用字符编码及乱码分析[通俗易懂]常见的编码GBK、GB2312:表示国标编码,GDB包含简体中文和繁体中文,而DB2312只包含简体中文,也就是说,这两种编码都是描述中文的编码UNICODE编码:Java提供的16进制编码,可以描述世界上任意的文字信息,但是有个问题,若现在所有的字母都使用16进制编码,那么这个编码太庞大了,会造成网络传输的负担ISO8859-1:国际通用编码,但是所有的编码都需要进行转换UTF编码:相…

大家好,又见面了,我是你们的朋友全栈君。

常见的编码

  1. GBK、GB2312:表示国标编码,GDB包含简体中文和繁体中文,而DB2312只包含简体中文,也就是说,这两种编码都是描述中文的编码
  2. UNICODE编码:Java提供的16进制编码,可以描述世界上任意的文字信息,但是有个问题,若现在所有的字母都使用16进制编码,那么这个编码太庞大了,会造成网络传输的负担
  3. ISO8859-1:国际通用编码,但是所有的编码都需要进行转换
  4. UTF编码:相当于结合了UNOICODE、ISO8859-1,也就是需要用到16进制文字使用UNICODE,而若只是字母就使用ISO8859-1,常用的就是UTF- 8

乱码产生分析

若本地系统所用的编码和程序所用的编码不同,强制转换就会出现乱码

public class analyzeMessyCode {
    public static void main(String[] args) throws IOException {
        FileOutputStream fileOut = new FileOutputStream
                (new File("C:\\Users\\Administrator\\Downloads\\file1.txt"));
        fileOut.write("hello world".getBytes("ISO8859-1"));
        fileOut.close();
    }
}

乱码产生的原因:编码和解码不统一产生的问题

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139718.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月29日 上午11:36
下一篇 2022年5月29日 上午11:46


相关推荐

  • 异常:java lang AbstractMethodError

    异常:java lang AbstractMethodError通常在尝试调用抽象方法时抛出此java.lang.AbstractMethodError。通常,此错误是在编译时本身识别的,如果在运行时抛出此错误,则该类必须不兼容(与先前存在的类不兼容))更改。因此,它是IncompatibleClassChangeError的子类。我们知道不能调用抽象方法,如果尝试这样做,则会收到编译时错误,因此您可能会认为在运行时如何抛出此错误?…

    2022年6月2日
    42
  • 数据库简介与 Mysql 服务基础「建议收藏」

    数据库简介与 Mysql 服务基础「建议收藏」文章目录一、数据库系统发展史二、数据库基本概念一、数据库系统发展史第一代数据库自20世纪60年代起,第一代数据库系统问世是层次模型与网状模型的数据库系统为统—管理和共享数据提供了有力的支撑第二代数据库20世纪70年代初,第二代数据库——关系型数据库开始出现20世纪80年代初,IBM公司的关系型数据库系统DB2问世,开始逐步取代层次与网状模型的数据库,成为行业主流到目前为止,关系型数据库系统仍占领数据库应用的主要地位第三代数据库自20世

    2022年7月27日
    12
  • 整合Druid—SpringBoot[通俗易懂]

    整合Druid—SpringBoot[通俗易懂]整合Druid(数据源)Druid简介Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。Druid是阿里巴巴开源平台上一个数据库连接池实现,结合了C3P0、DBCP等DB池的优点,同时加入了日志监控。Druid可以很好的监控DB池连接和SQL的执行情况,天生就是针对监控而生的DB连接池。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。SpringBoot2.0以上默认使用Hikari

    2022年7月23日
    14
  • 《DeepSeek使用教程蓝皮书》:从入门到进阶的权威使用指南!

    《DeepSeek使用教程蓝皮书》:从入门到进阶的权威使用指南!

    2026年3月15日
    3
  • 阿里版「即梦」正式发布,名为「造点AI」

    阿里版「即梦」正式发布,名为「造点AI」

    2026年3月13日
    2
  • Java编译运行命令

    Java编译运行命令javac 是用来编译 java 文件的 dos 窗口直接输入 javac 可以看到大量提示信息 提示 javac 命令的用法 例子源码命令 cp 指定查找用户类文件和注释处理程序的位置 与 classpath 效果一样 多个 jar 包 window 上分号 分隔 linux 上是分号 分隔 不支持通配符 需要列出所有 jar 包 用一点 代表当前路径 d 指定放置生成的类文件 class 的位置 若此选项省略 默认在当前目录下生成 class 文件 并且不会生成包文件夹 当前目录可以用 来表示

    2026年3月16日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号