ソートマージ


付録I.4 日付データの扱い

〈この項の構成〉

(1) ワイド文字対応

「UCS-2」,「UCS-4」,「UTF-16」および「UTF-32」では,10進数字の「0」〜「9」,およびCSVの日付で使用するスラント,ハイフン,ピリオドなどの桁修飾文字が,それぞれ2バイトまたは4バイトのワイド文字で表現されます。

日付のデータ形式の詳細については,「3.2 キー属性と形式」の「SORT EE固有のデータ形式」を参照してください。

(2) キー・項目の開始位置と長さの指定

(a) 開始バイト位置

キー・項目に指定した「+開始バイト位置」から,エンコードに従って文字(数字)解析します。

エンコードの種類が「UCS-2LE」,「UCS-2BE」,「UTF-16LE」または「UTF-16BE」の場合は「2の倍数」を開始バイト位置に指定してください。

エンコードの種類が「UCS-4LE」,「UCS-4BE」,「UTF-32LE」または「UTF-32BE」の場合は「4の倍数」を開始バイト位置に指定してください。

(b) 桁数

キー・項目に指定した「−桁数」をエンコードに従って文字(数字)解析します。指定する値はバイト長ではなく,文字の桁数(CSVファイルの日付属性の場合は「年月日」の桁数)です。

SORT EEでは,指定された桁数を次の表に示すバイト長に換算して操作します。

表I‒11 エンコードと桁数の関係(日付)

エンコード種別

1桁のバイト長

備考(例)

ASCII

1

キー「g+0-4」の長さは,4×1=4バイトです。

SJIS

EUC-JP

EUC-HJ

UTF-8

UCS-2LE

2

キー「g+0-4」の長さは,4×2=8バイトです。

UCS-2BE

UTF-16LE

UTF-16BE

UCS-4LE

4

キー「g+0-4」の長さは,4×4=16バイトです。

UCS-4BE

UTF-32LE

UTF-32BE