国家-

N国际-OF 函数返回由 argument-1中的字符的本地字符表示组成的本地字符串。

该函数的类型为 national。

格式

读取语法图跳过可视语法图FUNCTION NATIONAL-OF (argument-1 argument-2)
argument-1
必须为类字母,字母数字或 DBCS。 argument-1 指定用于转换的源字符串。
argument-2
必须是整数或类字母数字。 argument-2 标识用于转换的源代码页。

如果 argument-2 是字母数字类,则必须标识ICU转换库支持的主代码页或别名代码页名称(参见 国际统一码组件:转换器浏览器 )。

如果 argument-2 是整数,那么该整数必须是有效的 CCSID 数字。

如果省略 argument-2 ,那么将按如下所示确定源代码页:

  • 如果 argument-1 是本机项 (USAGE DISPLAY 或 USAGE DISPLAY-1 包含 ASCII 或 ASCII DBCS, EUC 或 UTF-8 数据) ,那么将根据运行时语言环境确定源代码页。
  • 如果 argument-1 是包含 EBCDIC 或 EBCDIC DBCS 数据的 USAGE DISPLAY 或 USAGE DISPLAY-1 项,那么如果设置了源代码页,那么将根据该环境变量来确定该源代码页。 如果未设置 IBMIC_CODEPAGE 环境变量,那么源代码页是在 COBOL for Linux on x86 Programming Guide中的 语言环境和受支持的代码页 中指定的缺省代码页。

返回的值是由 argument-1 字符组成的本地字符串,这些字符转换为本地字符表示。 当无法将源字符转换为国家字符时,会将源字符转换为替换字符。 替换字符为:

  • X'1A00' 如果转换单字节字符
  • X'FDFF ' (如果转换多字节字符)

未发生异常情况。

返回值的长度取决于 argument-1 的内容以及源代码页的特征。

使用说明:

  • 使用代码页名称可提供与其他 Linux® 软件的一致性,但源代码不可移植到 Enterprise COBOL for z/OS®
  • UTF-8 的 CCSID 为 1208。
  • UTF-16LE 的 CCSID 为 1200

异常: 如果转换失败,将发生严重的运行时错误。