前のページ|次のページ

KCVT 関数

データをある種類のエンコーディングデータから別の種類のエンコーディングデータに変換します。

カテゴリ: 文字
制限事項: この関数にはI18Nレベル1ステータスが割り当てられています。英語以外の言語を使用する場合は、可能であればI18Nレベル1関数を使用しないようにします。特定の環境では、I18Nレベル1関数がDBCS (Double-Byte Character Set)エンコーディングやMBCS (Multi-Byte Character Set)エンコーディングで正しく機能しない場合があります。 詳細については、次を参照してください。 国際化の互換性.

構文

KCVT(text, intype, outtype, <options,…> )

必須引数

text

変換する文字変数を指定します。

intype

データのエンコーディングを指定します。テキストのエンコーディングは、入力データのエンコーディングと一致する必要があります。有効な値については、データのトランスコーディングに使用するSBCS、DBCSおよびUnicodeエンコーディング値を参照してください。

ASCIIANYおよびEBCIDICANY は、無効なエンコーディング値です。

outtype

文字データに変換するエンコーディングを指定します。有効な値については、データのトランスコーディングに使用するSBCS、DBCSおよびUnicodeエンコーディング値を参照してください。

ASCIIANYおよびEBCIDICANY は、無効なエンコーディング値です。

options

文字データオプションを指定します。次のオプションを使用できます。

NOSOSI | NOSHIFT シフトコードと半角文字は含めません。
INPLACE 文字データを変換によって置き換えます。INPLACEオプションは、異なるホスト間で文字データの長さが異なる場合に、同じ位置を確保するために指定します。たとえば、INPLACEオプションは、データをシフトコードが必要なホストから、シフトコードが不要な別のホストに変換します。シフトコードに関してouttypeに変換される文字データの長さが、intypeに指定された長さよりも長い場合には、切り捨てが行われます。
KANA 文字データの列に、半角カタカナ文字を含めます。
UPCASE 2バイトの英字を大文字に変換します。
LOWCASE 2バイトの英字を小文字に変換します。
KATA2HIRA カタカナデータをひらがなに変換します。
HIRA2KATA ひらがなデータをカタカナに変換します。

詳細

制限と詳しい情報については、 SAS文字列関数の国際化の互換性 を参照してください。
KCVT関数は、SBCS、DBCSおよびMBCS文字列をエンコーディングデータに変換します。たとえば、KCVT関数では、ASCIIコードデータからUCS2エンコーディングデータ、ギリシャ語コードデータからUTF-8、日本語SJISコードデータから別の日本語コードデータの変換が可能です。指定可能なintypeおよびouttypeオプションの種類は、UCS2、UCS2L、UCS2B、UTF8です。DBCSモードを有効にするには、構成ファイルまたはコマンドラインで、次のDBCSオプションを指定します。
KCVT関数が事前に長さを割り当てられていない変数に値を返す場合、デフォルトで変数の長さは200に割り当てられます。

次のコードは、 my-input-file として指定された外部テキストファイルについてIBM PCコードをDECコードに変換し、OUTDDに書き出します。
 data _null_;
    infile 'my-input-file';
    file outdd noprint;
    input @1 text $char80.;
    text = kcvt(text, 'pcibm', 'dec');
    put @1 text $char80.;
 run; 

関連項目:

プロシジャ:
前のページ|次のページ|ページの先頭へ