Visual COBOL には、EBCDIC <-> ASCII の文字セット変換の国別サポートが組み込まれています。
_CODESET ライブラリ ルーチンを使用して EBCDIC と ASCII の間で文字列を変換する場合は、MFCODESET 環境変数によって、指定された値またはデフォルトの動作に基づき、アプリケーションに対して適切な EBCDIC <-> ASCII 変換が管理および選択されます。
下の表に、使用可能な MFCODESET 値 (国別コードとも呼ばれます) と、それに対応する EBCDIC コード化文字セット識別コード (CCSID) および言語を示します。
この表は、当初は国際電気通信連合 (ITU) によって規定された国別コードを反映していましたが、CJK (中国語、日本語、韓国語) 拡張を含むように拡張されました。
次の文字セット変換がサポートされています。
ユーロ対応 (€) の場合、MFCODESET 値にプレフィックスとして「E」を付けます。
国別コード (MFCODESET) |
EBCDIC CCSID | 言語 |
---|---|---|
AUTOMATIC
AUTO |
オペレーティング システムのデフォルト - CBL_GET_OS_INFO に基づいて国別コードを設定します | |
DEFAULT | Windows では 0437 (英語 (米国))、日本語版 Windows では 0081 (日本語カタカナ拡張) に設定されます。 | |
0031 | 37、1140 | オランダ語 |
0033 | 297、1147 | フランス語 |
0034 | 284、1145 | スペイン語 |
0039 | 280、1144 | イタリア語 |
0043 | 273、1141 | ドイツ語 (オーストリア) |
0044 | 285、1146 | 英語 (イギリス) |
0045 | 277、1142 | デンマーク語 |
0046 | 278、1143 | スウェーデン語 |
0047 | 277、1142 | ノルウェー語 |
0049 | 273、1141 | ドイツ語 |
0066 | 838 | タイ語拡張 |
0081† | 930 (290、300) | *日本語カタカナ拡張 |
0082 | 933 (833、834) | *韓国語 |
0086 | 13676 (836、837) | *簡体字中国語 |
0351 | 37、1140 | ポルトガル語 |
0358 | 278、1143 | フィンランド語 |
0420 | 420 | アラビア語
以下の「アラビア語サポートに関する考慮事項」を参照してください。 |
0437 | 37、1140 | 英語 (米国) |
0500 | 500、1148 | 国際 (ラテン 1) |
0886 | 937 (37、835) | *繁体字中国語 |
0930† | 930 (290、300) | *日本語カタカナ拡張 |
0939† | 939 (1027、300) | *日本語ラテン拡張 |
9122† | 9122 (290、300) | *日本語カタカナ |
アスタリスク (*) が付いている文字セットは 1 バイト文字と 2 バイト文字混合の変換に対応しています。これらの行の EBCDIC CCSID では、最初に混合バイトの CCSID が示されており、その後に 1 バイトおよび 2 バイトのコード ページ グローバル識別子 (CPGID) がかっこ内に示されています。
ダガー (†) が付いている MFCODESET は、日本工業規格 (JIS) X 0208 1978 改訂版に基づいています。日本工業規格 (JIS) X 0208 1990 改訂に基づく追加の変換テーブルも使用できます (IBM の変換テーブル CCSID 300 - 941 から取得されます)。これらのテーブルをデフォルトのテーブルの代わりに使用するには、MFCODESET_DBCS 環境変数を 941 に設定します。
かっこ内のその他の EBCDIC CCSID は、該当の国別コードに対する「非ユーロ、ユーロ」を表しています。
無効な国別コードを設定した場合は、DEFAULT が国別コード設定として使用されます。
Windows 上の DBMS サーバーを使用するデータベース アプリケーションの場合は、上の表を使用してください。
1 バイト文字セットの 819 または 923 を使用して作成された UNIX データベースにアクセスする Windows および UNIX のデータベース アプリケーションの場合は、次の表を使用してください。
国別コード
(MFCODESET) |
EBCDIC CCSID | 言語 |
---|---|---|
1140 | 37、1140 | オランダ語、英語 (米国)、ポルトガル語 |
1141 | 273、1141 | ドイツ語 (オーストリア)、ドイツ語 |
1142 | 277、1142 | デンマーク語、ノルウェー語 |
1143 | 278、1143 | スウェーデン語、フィンランド語 |
1144 | 280、1144 | イタリア語 |
1145 | 284、1145 | スペイン語 |
1146 | 285、1146 | 英語 (イギリス) |
1147 | 297、1147 | フランス語 |
1148 | 500、1148 | 国際 (ラテン 1) |