6

如何以encoding编程方式找出 SAS 全局选项?我可以运行proc options,它会给我答案,但我需要从代码中完成。

我希望能在“查看宏符号 &sysencoding”这一行得到答案,但这可能太令人期待了。我宁愿避免脆弱的事情,比如写入外部文件和重新解析。

4

2 回答 2

7

您可以在 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 系统的手册。

于 2009-04-29T09:56:35.687 回答
3

在 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
于 2009-04-29T14:11:09.943 回答