付録D.2 入力ファイルのエンコーディング

EURでは,入力ファイルのデータの先頭にUnicode-BOMがある場合,Unicodeとして扱います。データの先頭にUnicode-BOMがない場合は,コードページに対応するシングルバイトまたはマルチバイトデータとして扱います。

<この項の構成>
(1) BOMと対応するエンコーディング
(2) BOMがない場合のエンコーディング
(3) 注意事項

(1) BOMと対応するエンコーディング

先頭に付与するBOMと対応するエンコーディングを,OS環境ごとに次に示します。

Windows環境の場合
Windows環境でのBOMと対応するエンコーディング方式を次の表に示します。

表D-3  Windows環境でのBOMと対応するエンコーディング方式

BOMエンコーディング方式
FEFFUTF-16(ビッグエンディアン)
FFFEUTF-16(リトルエンディアン)
EFBBBFUTF-8
なし対応する言語に従います。
詳細は,「付録D.2(2) BOMがない場合のエンコーディング」を参照してください。
UNIX/Linux環境の場合
UNIX/Linux環境でのBOMと対応するエンコーディング方式を次の表に示します。なお,UTF-8の場合,Unicode-BOMの自動判定はありません。

表D-4  UNIX/Linux環境でのBOMと対応するエンコーディング方式

BOMエンコーディング方式
FEFFUTF-16(ビッグエンディアン)
FFFEUTF-16(リトルエンディアン)
なし対応する言語に従います。
詳細は,「付録D.2(2) BOMがない場合のエンコーディング」を参照してください。

(2) BOMがない場合のエンコーディング

データの先頭にUnicode-BOMがない場合,入力ファイルのエンコーディングは,ファイルを入力するOS環境の言語によって決定されます。入力ファイルをOS環境の言語に対応したエンコーディングで変換した場合は,デフォルトのエンコーディングで変換されます。

Windows環境の場合
デフォルトのエンコーディング方式は,次の表に示すように,コードページ別に設定されます。

表D-5 Windows環境でのコードページ別のエンコーディング方式

コードページ言語エンコーディング方式
1252英語(US)Windows:CP1252
936簡体中国語GB-18030
932日本語Windows-31J
その他ISO8859-1
(凡例)
-:該当しません。

UNIX/Linux環境の場合
デフォルトのエンコーディング方式は,次の表に示すように,ロケール名によって設定されます。

表D-6 UNIX/Linux環境でのロケール名ごとのエンコーディング方式

OSロケール名エンコーディング方式
HP-UX
(IPF)
C.iso88591ISO8859-1
en_US.iso885915ISO8859-15
ja_JP.SJISWindows-31J
ja_JP.eucJPEUCJP-ms改
zh_CN.utf8
ja_JP.utf8
UTF-8
zh_CN.hp15CNGB18030
zh_CN.gb18030GB18030
その他ISO8859-1
AIXCISO8859-1
en_USISO8859-15
Ja_JPWindows-31J
ja_JPEUCJP-ms改
ZH_CN
JA_JP
UTF-8
zh_CNGB18030
Zh_CNGB18030
その他ISO8859-1
LinuxC.ISO-8859-1ISO8859-1
en_US.ISO-8859-15ISO8859-15
ja_JP.eucJPEUCJP-ms改
zh_CN.UTF-8
ja_JP.UTF-8
UTF-8
zh_CN.GB2312GB18030
zh_CN.GBKGB18030
zh_CN.GB18030GB18030
その他ISO8859-1
注※
EUR固有のエンコーディング方式です。eucJP-msのうち,次の文字は出力できません。
・JISX0212に含まれる文字
・Windows-31J-IBM拡張文字
・UCS-2の私用領域(U+E000~U+F8FF)に定義されている6,400字のうち,最初の1,880文字を除いた文字

(3) 注意事項