前のページ|次のページ

互換性があるエンコーディングと互換性がないエンコーディング

互換性があるエンコーディングと互換性がないエンコーディングの概要

ASCIIはほとんどのエンコーディングの基礎で、多くのパーソナルコンピュータ、ミニコンピュータおよびワークステーションで使用されます。ただし、IBMメインフレームではEBCDICエンコーディングが使用されます。そのため、ASCIIとEBCDICのマシンとデータには互換性がありません。あるエンコーディングの一部またはすべての文字が別のエンコーディングの文字と異なる場合、トランスコーディングが必要になります。
ただし、トランスコーディングを避けるため、データセットを作成してSASがトランスコードしないエンコーディング値を指定することもできます。たとえば、ENCODING=データセットオプション、LIBNAMEステートメントのINENCODING=オプション/OUTENCODING=オプションのいずれかで次の値を使用した場合、トランスコーディングは実行されません。
  • ANYを使用して、EBCDICエンコーディングとASCIIエンコーディング間でもトランスコーディングを実行しないように指定します。
    注: ANYはBINARYの指定と同等です。データはバイナリであるため、実際のエンコーディングには意味がありません。
  • ASCIIANYを使用して、すべてのASCIIベースのエンコーディングと互換性があるデータセットを作成できます。
  • EBCDICANYを使用して、すべてのEBCDICベースのエンコーディングと互換性があるデータセットを作成できます。
混在したエンコーディングを含むSASデータセットを作成できます。たとえば、Latin1とLatin2の両方を含めることができます。入力処理または出力処理でのデータのトランスコードは避けます。デフォルトでは、データは現在のセッションエンコーディングにトランスコードされます。
SASファイルとSASセッションが互換性がないエンコーディングを使用する場合、データをトランスコードする必要があります。ASCIIとEBCDICがこの例に該当します。
SASファイルとSASセッションに互換性があるエンコーディングある場合は、トランスコーディングは必要ありません。
動作環境別のエンコーディングの一覧については、 SASセッションのエンコーディング値を参照してください。

改行文字とEBCDICとASCII間のデータ転送

ASCII動作環境で実行するソフトウェアでは、改行文字で行末を指定する必要があります。データをz/OSからASCIIエンコーディングをサポートするマシンに転送する場合、EBCDIC復帰改行文字が認識されないため、特にHTML出力でフォーマティングの問題が発生する可能性があります。z/OSでは、次の2セットのEBCDICベースのエンコーディングをサポートします。
  • 名前にEBCDICが含まれるエンコーディングは、ASCII改行文字に対してEBCDIC改行の従来のマッピングを使用します。そのため、データが1列で表示される可能性があります。
  • 名前にOpen Editionが含まれるエンコーディングは、改行文字を行末文字として使用します。ASCIIを使用する動作環境にデータを転送する場合、EBCDIC復帰改行文字をASCII改行文字にマッピングします。このマッピングにより、ASCIIアプリケーションが行末を適切に解釈できるため、フォーマティングがより正確になります。
動作環境別のエンコーディングの一覧については、 SASセッションのエンコーディング値を参照してください。

互換性のあるEBCDICとOpenEditionエンコーディング

EBCDICとOpenEditionは、互換性があるエンコーディングです。
名前にEBCDICが含まれるエンコーディングは、EBCDIC改行(0x25)と復帰改行(0x15)文字の従来のマッピングを使用します。
名前にOPEN_ED、説明にOpenEditionが含まれるエンコーディングは、復帰改行と改行文字のマッピングを切り替えます。そのため、改行文字を行末文字として使用します。
2つのエンコーディングが同じコードページ番号を使用し、1つがEBCDICでもう1つがOpen Editionの場合、トランスコーディングは必要ありません。
例:
データがEBCDIC1143でエンコードされ、SASセッションがOPEN_ED-1143でエンコードされる場合は、同じ1143コードページが使用されるためトランスコーディングは必要ありません。
ASCIIとEBCDIC間でデータを転送するために、互換性があるエンコーディングのリストからOpen Editionエンコーディングを指定できます。

互換性のある東アジア言語のMBCSエンコーディング

一部の東アジアの2バイト(DBCS)は、互換性があるエンコーディングです。次のリストの各行に、互換性があるエンコーディングを示します。
  • SHIFT-JIS、MS-932、IBM-942、MACOS-1
  • MS-949、MACOS-3、EUC-KR
  • EUC-CN、MS-936、MACOS-25、DEC-CN
  • EUC-TW、DEC-TW
  • MS-950、MACOS-2、BIG5
SASセッションがグループ内の1つのエンコーディングでエンコードされ、データセットが同グループ内の別のエンコーディングでエンコードされる場合、トランスコーディングは発生しません。
例:
セッションエンコーディングがSHIFT-JISでデータセットエンコーディングがIBM-942の場合、トランスコーディングは発生しません。
前のページ|次のページ|ページの先頭へ