前のページ|次のページ

CORRECTENCODING=オプション

SASファイルのエンコーディング属性を、SASファイル内のデータのエンコーディングに一致させるように明示的に変更します。

該当要素: DATASETSプロシジャのMODIFYステートメント

構文

MODIFY SAS file </<CORRECTENCODING=encoding-value> >;

オプション引数

</ <CORRECTENCODING=encoding-value> >

ファイル内のデータの実際のエンコーディングに一致させるため、ファイルのディスクリプタ情報に記録されるエンコーディングインジケータの変更を可能にします。各SASファイル名の後のこのオプションには、かっこは使用できません。フォワードスラッシュの後にCORRECTENCODING=を指定する必要があります。次に、例を示します。

modify mydata / correctencoding=latin2;
トランスコーディングの有効なエンコーディング値のリストについては、データのトランスコーディングに使用するSBCS、DBCSおよびUnicodeエンコーディング値を参照してください。
制限事項 CORRECTENCODING=は、SASファイルがデフォルトのベースエンジンであるSAS 9のV9を使用する場合にのみ、使用できます。

例: SASセッションエンコーディングとSASファイルエンコーディングを解決するためのCORRECTENCODING=オプションの使用

ファイルのエンコーディングインジケータは、データのエンコーディングとは別にできます。たとえば、SAS 9より前のバージョンで作成されたSASファイルには、エンコーディングインジケータは保存されていません。このようなエンコーディングが記録されていないSASファイルをSAS 9のセッションで開くと、現在のセッションのエンコーディングが割り当てられます。たとえば、データのエンコーディングがデンマーク語EBCDICで現在のセッションのエンコーディングがWestern Wlatin1の場合、ファイル内のデータの実際のエンコーディングとファイルのディスクリプタ情報に保存されたエンコーディングインジケータは一致しません。この場合、データは正常にトランスコードされず、出力が読み込めなくなる可能性があります。次のMODIFYステートメントを使用し、EDCDICエンコーディングを明示的に割り当てることでこの問題を解決できます。
注: CEDAでは読み取り専用のコピーが作成されます。データを永続的にトランスコードするには、PROC COPYまたはDATAステップでデータをコピーする必要があります。
proc datasets library=myfiles;
   modify olddata / correctencoding=ebcdic1142;
quit;
前のページ|次のページ|ページの先頭へ