zoukankan      html  css  js  c++  java
  • 字符集GBK, Unicode, 编码GBK, Unicode, UTF8, UTF16

    字符集charset : 定义一个集合中包含多少字符, 即哪些字符属于该字符集哪些不属于, 比如: ASCII, GBK, Unicode, 几乎所有其他字符集都包含ASCII字符集

    编码encoding : 定义字符如何用字节存储, 比如: ASCII(也表示编码),GBK(也表示编码), Unicode(也表示编码), UTF8, UTF16

    一个字符集有一种或者n种编码, 1:n

    有时一个名字既代表一个字符集又代表一种编码, 比如: GBK, ASCII, Unicode

    Unicode字符集常用2种编码方式: Unicode编码, UTF8编码. 其中Unicode编码定义每个字符占2个字节, 很多系统内存中都使用Unicode编码, 比如: C#, Java, 比如: 在C#中, new char[10]分配10x2=20个字节的空间用于存储10个Unicode编码的字符.

    而UTF8定义英文字符1个字节, 中文等字符则占3个字节, 这样在存储和网络传输上英文字符串时占用的空间和带宽就较小.

    字符串"a中"(2个字符)保存成文件时如下:

    编码 字节 说明
    GBK 61 D6 D0 61是GBK编码的''a', D6 D0是GBK编码的'中'
    Unicode FF FE 61 00 2D 4E FF FE是Unicode编码的文件首标识, 61 00是Unicode编码的'a', 2D 4E是Unicode编码的'中'
    UTF8 EF BB BF 61 E4 B8 AD EF BB BF是UTF8的文件首标识, 61是UTF8编码的'a', E4 B8 AD是UTF8编码的'中'
  • 相关阅读:
    python学习笔记(7)
    python学习笔记(6)
    python学习笔记(5)
    python学习笔记(4)
    python学习笔记(3)
    python学习笔记(2)
    软件工程结对编程第二次作业
    软件工程结对编程第一次作业
    软件工程第三次作业
    答编辑问
  • 原文地址:https://www.cnblogs.com/mrfangzheng/p/1289443.html
Copyright © 2011-2022 走看看