What is the encoding of Chinese characters on Wikipedia?
Solution 1
>>> c='\xe7\x9a\x84'.decode('utf8')
>>> c
u'\u7684'
>>> print c
的
though Unicode encodes it in 16 bits, utf8 breaks it down to 3 bytes.
Solution 2
The header of a wikipedia page includes this:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
So the page is UTF-8.
Solution 3
The example you give is an IRI.
IRIs use the UTF8 encoding. UTF8 implements unicode, and in unicode, each character has a codepoint, that is between 0x4E00 and 0x9FFF (2 bytes) for all chinese characters.
But UTF8 doesn't encode characters by just storing their codepoint (UTF32 does that). Instead, it uses a more complex standard, that makes all chinese ideograms 2 or 3 bytes long.
laurent
Updated on May 09, 2020Comments
-
laurent almost 4 years
I was looking at the encoding of Chinese characters on Wikipedia and I'm having trouble figuring out what they are using. For instance "的" is encoded as "%E7%9A%84" (see here). That's three bytes, however none of the encodings described on this page uses three bytes to represent Chinese characters. UTF-8 for instance uses 2 bytes.
I'm basically trying to match these three bytes to an actual character. Any suggestion on what encoding it could be?
-
laurent about 13 yearsThanks, I assumed UTF-8 was using the same encoding as unicode. That makes sense now.
-
sleske almost 13 years@Laurent: No, because (please repeate after me) Unicode is not an encoding. Unicode is a standard for representing text, and encoding (actually, several encodings) is part of the standard.
-
sleske almost 13 years@Laurent: You may be confused by the fact that in UTF-32 (which is one encoding) characters are in fact encoded by their codepoint number (i.e. the encoding is trivial). But there are other encodings, and UTF-32 is acutally not used very often.
-
hAcKnRoCk over 7 yearscharset is misleading. It means "encoding" and not character sets, which are often confused together