SASエンコードオプションをプログラムで取得するにはどうすればよいですか?
-
03-07-2019 - |
質問
プログラムでSASグローバル encoding
オプションを見つけるにはどうすればよいですか? proc options
を実行できます。答えが得られますが、コードから実行する必要があります。
「マクロシンボル& sysencodingを見てください」の行で答えを期待していますが、これは期待するには多すぎるかもしれません。外部ファイルへの書き込みや再解析などの脆弱なことは避けたいと思います。
解決
Base SASでGETOPTION関数を使用できます:
data _null_;
val=GETOPTION('encoding');
put val=;
run;
私のシステムでは、これはログ出力を提供します
5 data _null_;
6 val=GETOPTION('encoding');
7 put val=;
8 run;
val=LATIN1
SCL(SASコンポーネント言語)では、OPTGETCおよびOPTGETN関数を使用できます。 詳細については、SASシステムの特定のバージョンのマニュアルを参照してください。
他のヒント
SAS 9.2では、& sysencoding
は getoption( 'encoding')
と同じものを提供しますが、大文字と小文字は異なります(簡単にこちら)。
157 %put &sysencoding;
wlatin1
158
159 data _null_;
160 val=GETOPTION('encoding');
161 put val=;
162 run;
val=WLATIN1
所属していません StackOverflow