zoukankan      html  css  js  c++  java
  • 文件编码问题

    一、为什么会有不同的编码

    在英文中,每个字符都有一个数字与之对应,比如:a->41,我们只会把41对应的二进制数值保存到计算机中。计算机的最小存储单元是字节,1btye=8bit .8位(11111111=255),所以只能存储255种情况。这在英文中够用。就是所谓的assii编码。

    但是汉字比较多,远不止255种情况,所以用两个字节存储。(65535种情况)。这是gb2312码表。但是后来发现,gb2312还是不能存储所有的中文字符,于是有发现了gbk。gbk包含gb2312,gb2312包含assii。

    我们知道,世界的国家很多,每个国家都有自己的语言,所以就有对应的编码。如果每个国家都整一台,就比较繁琐,所以出现了万国码(unicode),其中所有的字符都是占两个字节。但是我们知道,英文字符用一个字节是可以保存的,用两个就造成了浪费。所以又出现了utf-8(英文占一个字节,汉字占三个字节)。

    二、如何保证不出现乱码?

    保存的时候,选择的编码方式和读取的时候,显示的编码一致,或者兼容保存的时候的编码方式。

    注意:

    1.乱码只出现在文本文件中。

    2.操作系统,会根据当前选择的地区和语言,默认编码方式。

    3.FileStream默认utf-8编码。

  • 相关阅读:
    Python常用模块学习
    如何在cmd下切换不同版本的Python
    Python3
    Python第二模块(文件和函数)
    Hibernate教程一览
    struts2框架一览
    Java正式day_04——嵌套循环
    AJAX
    JS+JQUERY
    Mybatis注意问题
  • 原文地址:https://www.cnblogs.com/wesley168/p/6628205.html
Copyright © 2011-2022 走看看