ACINlsEnvironmentVariableGet()¶
-
ACINlsEnvironmentVariableGet()¶
作用:
返回NLS_OSCAR_LANG环境变量的字符集对应的字符集ID
语法:
sword ACINlsEnvironmentVariableGet ( void *val,
size_t size,
ub2 item,
ub2 charset,
size_t *rsize );
参数:
- val (IN/OUT)
返回全球化支持环境变量的值,例如NLS_OSCAR_LANG字符集ID
- size (IN)
指定给定输出值的大小,该值仅适用于字符串数据。 每条信息的最大长度为ACI_NLS_MAXBUFSZ字节。 对于数字数据,将忽略此参数。
- item (IN)
指定以下值之一以从全球化支持环境变量中获取:
ACI_NLS_CHARSET_ID:ub2数据类型中的NLS_OSCAR_LANG字符集ID; 如果未设置NLS_OSCAR_LANG,则返回默认字符集ID(根据平台返回:windows返回GBK的字符ID,Linux返回UTF8的字符ID)。
ACI_NLS_NCHARSET_ID:保留选项,不返回任何有效值。
- charset (IN)
指定检索到的字符串数据的字符集ID。 如果为0,则使用NLS_OSCAR_LANG值。 ACI_UTF16ID是此参数的有效值。 对于数字数据,将忽略此参数。
- rsize (OUT)
返回值的长度(以字节为单位)。
说明:
为了允许将来对该功能进行增强(从环境变量中检索其他值),输出val的数据类型是指向void的指针。 字符串数据不以NULL终止。
请注意,该函数没有环境句柄,因此它返回的字符集ID和国家字符集ID是在NLS_OSCAR_LANG中指定的值,而不是在ACI环境句柄中保存的值。 要获取ACI环境句柄使用的字符集ID,请分别为ACI_ATTR_ENV_CHARSET_ID和ACI_ATTR_ENV_NCHARSET_ID调用 ACIAttrGet 。
备注:目前不支持NLS_OSCAR_LANG字符集的获取。