<p>GB2312 is a strict subset of GBK, which in turn is a strict subset of GB18030.</p>
<p><a href="https://en.wikipedia.org/wiki/Code_page_936_(Microsoft_Windows)" rel="noreferrer">Windows CP936</a> originally only covers GB2312, but expanded to most of GBK since Win95.</p>
<p><a href="https://en.wikipedia.org/wiki/GB_2312" rel="noreferrer">GB2312</a> has 6763 Chinese characters.</p>
<p>GBK has 21003 Chinese character. <a href="https://chowdera.com/2022/03/202203052005021805.html" rel="noreferrer">ref</a></p>
<p>GB18030 (originally) has 27484 Chinese characers. (same ref as above)</p>
<p>Also, GB18030 contains a mapping into Unicode, which means all Unicode characters can also be represented in GB18030.</p>
<p><a href="https://en.wikipedia.org/wiki/CJK_Unified_Ideographs" rel="noreferrer">Unicode</a> 14.0 has 92865 Chinese characters (CJK Unified Ideograph). These characters in Unicode are called CJK Unified Ideographs as they are not only used in Chinese, but also in Japanese, Korean, and other languages that use (or used to use) Chinese characters. Some characters are never used in Chinese.</p>
<p>However, the characters in GB2312 are used most frequently. They already cover most characters in everyday use. The use of other characters are rare.</p>

CC BY-SA 4.0
2022-04-25T18:34:46.670Z
An additional note: GBK also contains traditional characters, while GB2312 does not. Names, among other things, sometimes contain traditional characters even in Mainland China.
Max Xiong
CC BY-SA 4.0
2022-04-21T09:50:54.017Z
2022-04-21T09:50:54.017Z
fefe
<p>My daily work often involves handling databases from around the world, as I support customers. Frequently encoded in CSV / TXT.</p>
<p>For legacy reasons, encoding often needs to be done into GB2312 (Windows codepage 936). And at times, certain characters don't convert.</p>
<p>I know that GB2312 does not cover as much as GB18030 or UTF8. But how much less ? And is there a way to figure out, without comparing every character in the full list ?</p>

CC BY-SA 4.0
2022-04-21T09:15:45.553Z
UTF in an encoding, not a character set. Do you mean Unicode?
fefe
CC BY-SA 4.0
2022-04-21T17:17:15.097Z
@fefe UTF-8 is a character encoding: it encodes characters. It makes sense to describe how many characters can be encoded using it.
wizzwizz4
CC BY-SA 4.0
2022-04-22T04:48:41.837Z
@wizzwizz4 not really. UTF-8 is literally a **U**nicode **T**ransformation **F**ormat; it does not deal with characters at all. Rather, it specifies how to turn code points (non-negative integers from `[ 0x0 .. 0x10ffff ]`) to sequences of one to four bytes. Strictly speaking, 'Unicode' is not a character set either; 'Unicode v14' is one, 'Unicode v15' is another.
John Frazer
<writing>
How much less of chinese written language does GB2312 cover versus GB18030 and UTF8?
# How much less of chinese written language does GB2312 cover versus GB18030 and UTF8?

(Asked by: username_0 on 2022-04-21)

My daily work often involves handling databases from around the world, as I support customers. Frequently encoded in CSV / TXT.

For legacy reasons, encoding often needs to be done into GB2312 (Windows codepage 936). And at times, certain characters don't convert.

I know that GB2312 does not cover as much as GB18030 or UTF8. But how much less ? And is there a way to figure out, without comparing every character in the full list ?

**Tags:** writing

> **Comments:**
> **username_1**: UTF in an encoding, not a character set. Do you mean Unicode?  
> **username_2**: @username_1 UTF-8 is a character encoding: it encodes characters. It makes sense to describe how many characters can be encoded using it.  
> **username_3**: @username_2 not really. UTF-8 is literally a **U**nicode **T**ransformation **F**ormat; it does not deal with characters at all. Rather, it specifies how to turn code points (non-negative integers from `[ 0x0 .. 0x10ffff ]`) to sequences of one to four bytes. Strictly speaking, 'Unicode' is not a character set either; 'Unicode v14' is one, 'Unicode v15' is another.  

---

## 1 answers

### Answer by username_1 on 2022-04-21. Score: 5 | Accepted answer

GB2312 is a strict subset of GBK, which in turn is a strict subset of GB18030.

[Windows CP936](https://en.wikipedia.org/wiki/Code_page_936_(Microsoft_Windows)) originally only covers GB2312, but expanded to most of GBK since Win95.

[GB2312](https://en.wikipedia.org/wiki/GB_2312) has 6763 Chinese characters.

GBK has 21003 Chinese character. [ref](https://chowdera.com/2022/03/202203052005021805.html)

GB18030 (originally) has 27484 Chinese characers. (same ref as above)

Also, GB18030 contains a mapping into Unicode, which means all Unicode characters can also be represented in GB18030.

[Unicode](https://en.wikipedia.org/wiki/CJK_Unified_Ideographs) 14.0 has 92865 Chinese characters (CJK Unified Ideograph). These characters in Unicode are called CJK Unified Ideographs as they are not only used in Chinese, but also in Japanese, Korean, and other languages that use (or used to use) Chinese characters. Some characters are never used in Chinese.

However, the characters in GB2312 are used most frequently. They already cover most characters in everyday use. The use of other characters are rare.

> **Comments:**
> **username_4**: An additional note: GBK also contains traditional characters, while GB2312 does not. Names, among other things, sometimes contain traditional characters even in Mainland China.  

---

