ソートマージ


付録I.1 文字コード体系とエンコード

入力レコードの文字列データを表現するコード体系とエンコード種別を,次の表に示します。

表I‒1 SORT EEとSORTで対応している文字コード体系

コード体系

文字種別

SORT EE

SORT

英数字

カタカナ

漢字・外字など

ASCII

ASCII

※4

※2

JIS8

ASCII

JIS8

※4

※2

JIS X 0201

Shift_JIS

JIS8

JIS8

2バイト符号化

※1

※2

JIS X 0208

EUC

G0

G2

G1,G3,EUC-HJ領域

※1

G1,G3

※2

Unicode

UCS-2

基本ラテン文字

U+0020〜U+007F

半角形/全角形

U+FF00〜FFFD

CJK統合漢字など

※3

×

UCS-4

基本ラテン文字

U+0020〜U+007F

半角形/全角形

U+FF00〜FFFD

CJK統合漢字,CJK統合漢字拡張など

※3

×

(凡例)

○:対応している

×:対応していない

−:該当しない

注※1

属性コード「c」,「j」および「q」で,1文字1バイトとして扱います。

属性コード「u」および「v」で,1文字nバイトのマルチバイト文字として扱います。

注※2

属性コード「c」,「j」で,1文字1バイトとして扱います。

注※3

属性コード「w」で,1文字2または4バイトのワイド文字として扱います。

属性コード「u」および「v」で,1文字nバイトのマルチバイト文字として扱います。

注※4

すべての文字属性コードで,1文字1バイトとして扱います。

表I‒2 SORT EEで指定できる文字コードおよびエンコードの種別

文字コード/エンコード種別※1

説明

コード範囲

ASCII

ASCIIコード+JIS8

(JIS 8ビット単位コードを含みます)

  • 1バイト長

    0x00〜0xFF

SJIS

Shift-JIS

(Windowsは「Microsoftコードページ932」が該当します)

  • 1バイト長

    0x00〜0x80,0xA0〜0xDF,0xFD〜0xFF

  • 2バイト長

    第1バイト:0x81〜0x9F,0xE0〜0xFC

    第2バイト:0x40〜0x7E,0x80〜0xFC

EUC-JP

日本語EUC

G0:ASCII

G1:JIS X 0213第1面

G2:JIS X 0201カタカナ

G3:JIS X 0213第2面

(Windowsは「Microsoftコードページ51932」が該当します)

  • 1バイト長(G0)

    0x00〜0x7F

  • 2バイト長(G1)

    第1,2バイト:0xA1〜0xFE

  • 2バイト長(G2)

    第1バイト:0x8E

    第2バイト:0xA1〜0xFE

  • 3バイト長(G3)

    第1バイト:0x8F

    第2,3バイト:0xA1〜0xFE

EUC-HJ※3

日本語EUC(EUC-HJ)

G0:ASCII

G1:JIS X 0213第1面

G2:JIS X 0201カタカナ

EUC-HJ領域

  • 1バイト長(G0)

    0x00〜0x7F

  • 2バイト長(G1)

    第1,2バイト:0xA1〜0xFE

  • 2バイト長(G2)

    第1バイト:0x8E

    第2バイト:0xA1〜0xFE

  • 2バイト長(EUC-HJ領域)

    第1バイト:0xA1〜0xFE

    第2バイト:0x21〜0x7E

UTF-8

8ビット単位のUnicode符号化方式

(Windowsは「Microsoftコードページ65001」が該当します)

  • 1バイト長(U+0000〜U+007F)

    0x00〜0x7F

  • 2バイト長(U+0080〜U+07FF)

    第1バイト:0xC0〜0xDF

    第2バイト:0x80〜0xBF

  • 3バイト長(U+0800〜U+D7FF,U+E000〜U+FFFD)

    第1バイト:0xE0〜0xEF

    第2,3バイト:0x80〜0xBF

  • 4バイト長(U+10000〜U+10FFFF)

    第1バイト:0xF0〜0xF7

    第2〜4バイト:0x80〜0xBF

  • 5バイト長(未定義)

    第1バイト:0xF8〜0xFB

    第2〜5バイト:0x80〜0xBF

  • 6バイト長(未定義)

    第1バイト:0xFC〜0xFD

    第2〜6バイト:0x80〜0xBF

UCS-2LE

Little endianの2オクテット

(16bit)文字コード

  • 1文字長(2バイト)

    U+0000〜U+D7FF

    U+E000〜U+FFFD

  • サロゲートペア文字は2文字として扱う※2

UCS-2BE

Big endianの2オクテット

(16bit)文字コード

UCS-4LE

Little endianの4オクテット

(32bit)文字コード

  • 1文字長(4バイト)

    U+0000〜U+D7FF

    U+E000〜U+10FFFF

UCS-4BE

Big endianの4オクテット

(32bit)文字コード

UTF-16LE

little endianの16ビット単位のUnicode符号化方式(Windowsは「Microsoftコードページ1200」が該当します)

  • 1文字長(2バイト)

    U+0000〜U+D7FF

    U+E000〜U+FFFF

  • 1文字長(サロゲートペア4バイト)※2

    U+10000〜U+10FFFF

UTF-16BE

big endianの16ビット単位のUnicode符号化方式(Windowsは「Microsoftコードページ1201」が該当します)

UTF-32LE

little endianの32ビット単位のUnicode符号化方式(Windowsは「Microsoftコードページ12000」が該当します)

  • 1文字長(4バイト)

    U+0000〜U+D7FF

    U+E000〜U+10FFFF

UTF-32BE

big endianの32ビット単位のUnicode符号化方式(Windowsは「Microsoftコードページ12001」が該当します)

注※1

入力データのエンコードは,codetypeオペランドで指定します。オペランドについては,「5.8.13 codetypeオペランド」を参照してください。

注※2

サロゲートペア文字は,上位サロゲート「0xD800〜0xDBFF」と下位サロゲート「0xDC00〜0xDFFF」の範囲を使用し,ペアで1つの字を表現します。

注※3

EUC-HJは,EUCで外字を2バイトの範囲で使用するために,日立が独自に拡張したコードセットです。