PyRFC中nuc_length和uc_length参数的含义?

2024-02-10

我最喜欢的搜索引擎(ecosia https://www.ecosia.org/)无法从上游(SAP)找到有关以下含义的规范文档uc_length vs nuc_length.

两者有什么区别?

我通过修改版本获得这些参数clientPrintDescription.py https://github.com/SAP/PyRFC/blob/master/examples/clientPrintDescription.py


我无法确定它们在 Python 脚本中做了什么,但根据我的 ABAP/SAP 知识,我可以轻松地说:

  • nuc_长度:基于非 Unicode ABAP 的系统中参数的长度,以字节数为单位
  • uc_长度:a中参数的长度基于 Unicode ABAP 的系统 https://help.sap.com/doc/abapdocu_753_index_htm/7.53/en-US/index.htm?file=abenunicode_system_glosry.htm,以字节数为单位

基于非 Unicode ABAP 的系统使用一个字节对每个字符进行编码,而基于 Unicode ABAP 的系统使用两个字节对每个字符进行编码。从ABAP 7.50开始,所有系统都是Unicode。

在基于 Unicode ABAP 的系统中,字符串和文本字段可以存储从 U+0000 到 U+FFFF 的 Unicode 字符。请注意,字符 U+D800 到 U+DFFF 被 ABAP 运行时环境 (dixitABAP文档 https://help.sap.com/doc/abapdocu_753_index_htm/7.53/en-US/index.htm?file=abentext_environment.htm:“ABAP 编程语言支持 UCS-2 涵盖的子集,而不是完整的 UTF-16 集。”)

请注意,结构化参数由多个可以混合字符和非字符的字段组成,“uc_length”将仅使字符字段的字节数加倍。由于以下原因,字段之间还有一些虚拟字节“结盟” https://help.sap.com/doc/abapdocu_753_index_htm/7.53/en-US/index.htm?file=abenalignment.htm.

在您的示例中,Unicode 系统中 80 字节的文本字段对应于 40 个字符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PyRFC中nuc_length和uc_length参数的含义? 的相关文章

随机推荐