一般的な文字コード形式

2636 ワード

いくつかの一般的なコードを紹介します


中国語コード
1.GB 2321:簡体字中国語符号化、1漢字2バイト占有、大陸では主な符号化方式である.文章/ウェブページに繁体字中国語、日本語、韓国語などが含まれている場合、これらの内容は正しく符号化されない可能性があります.2.BIG 5:繁体字中国語コード、主に台湾地区で採用する.3.GBK:簡体字および繁体字中国語をサポートするが、他国のラテン文字以外の言語には問題がある.4.UTF-8:Unicodeコードの一種.Unicodeは、UTF-8、UTF-16、UTF-32の3つの符号化方式をいくつかの基本的な保持文字で制定した.UTF−8では、文字は8ビットシーケンスで符号化され、1つまたは複数バイトで表される.この方式の最大の利点は、UTF−8がASCII文字の符号化をその一部として保持することである.UTF-8は通称「万国コード」と呼ばれ、同画面に多言語を表示することができ、1つの漢字が3バイトを占める.国際化を実現するために、ウェブページはできるだけUTF-8符号化を採用しなければならない.もちろん、中国語を処理するときはhttpヘッダもUTF-8コードの---に変更します.
ハングルコード
1.EUC_KR:韓国KSX 1001文字セット(旧KSC 5601)を格納するための文字.この仕様は、KSX 2901(旧KSC 5861)によって定義されたKSX 1001ワードが2バイトで表される.「上位バイト」0 xA 1-0 xFE「下位バイト」0 xA 1-0 xFE
日本語コード
1.Shift_JIS:日本のコンピューターシステムでよく使われるコード表です.全角と半角のアルファベット、ひらがな、カタカナ、記号、日本語の漢字を収容できます.Shift_と名付けられていますJISの理由は、全角文字を置く場合、0 xA 1-0 xDFに置く半角仮名文字を避けるためです.マイクロソフトやIBMの日本語パソコンシステムでは、このコード表が使われています.この符号表をCP 932と呼ぶ.2.EUC_JP:日本JISx 0208およびJISx 0212の文字セットを格納するための文字ですが、日本語の文字はISO-2022-JPまたはShift_JISの方法で表示します.
ロシア語コード
1.KOI 8-R:KOI-8シリーズのスラブ文字8ビット符号化は、ロシア語およびブルガリア語で使用される.

文字セット


常用文字セット分類ASCIIとその拡張文字セットの役割:表語英語と西欧言語.ビット数:ASCIIは7ビットで表し、128文字を表すことができる.拡張は8ビットで256文字を表します.範囲:ASCIIは00から7 Fまで、拡張は00からFFまで.
ISO-8859-1文字セット作用:ASCIIを拡張し、西欧、ギリシャ語などを表す.ビット数:8ビット、範囲:00からFFまで、ASCII文字セットに対応.
GB 2312文字セットの役割:国家簡体字中国語文字セット、ASCII対応.ビット数:2バイトで表され、7445個の記号を表すことができ、6763個の漢字を含み、ほとんどの高周波漢字をカバーしている.範囲:A 1からF 7までの高バイト、A 1からFEまでの低バイト.高バイトと低バイトにそれぞれ0 XA 0を加えると符号化される.
BIG 5文字セットの役割:繁体字符号化を統一する.ビット数:2バイトで13053文字の漢字を表します.範囲:高バイトA 1からF 9、低バイト40から7 E、A 1からFE.
GBK文字セットの役割:GB 2312の拡張であり、繁体字のサポートを加え、GB 2312と互換性がある.ビット数:2バイトで表し、21886文字を表すことができます.範囲:高バイト81からFE、低バイト40からFE.
GB 18030文字セットの役割:中国語、日本語、朝鮮語などの符号化を解決し、GBKと互換性がある.ビット数:変バイト表現(1 ASCII,2,4バイト)を使用します.27484文字を表すことができます.範囲:1バイト00から7 F;2バイトの高バイトは81からFEまで、低バイトは40から7 Eと80からFEまでである.4バイトの第1の3バイトは81からFE、第2の4バイトは30から39までである.
UCS文字セットの役割:国際規格ISO 10646は、ユニバーサル文字セット(Universal Character Set)を定義する.UNICODと同類の組織であり、UCS-2とUNICODは互換性がある.桁数:UCS-2とUCS-4の2つのフォーマットがあり、それぞれ2バイトと4バイトです.範囲:現在、UCS-4はUCS-2の前に0 x 0000を追加しただけです.
UNICode文字セットの役割:世界650言語の統一符号化を行い、ISO-8859-1と互換性がある.ビット数:UNICode文字セットには、UTF-8、UTF-16、UTF-32の複数の符号化方式があります.

IOSでの応用

+ (NSData *)encodeDataWithString:(NSString *)string
{
    /**
     kCFStringEncodingGB_18030_2000: 
     kCFStringEncodingBig5: 
     kCFStringEncodingEUC_KR: 
     kCFStringEncodingShiftJIS: 
     kCFStringEncodingEUC_JP: 
     kCFStringEncodingKOI8_R: 
     */
    NSData *data = [string dataUsingEncoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingBig5)];
    return data;
}