首页 > SAP > ABAP > ABAP,UNICODE中文编码转换
2019
08-29

ABAP,UNICODE中文编码转换

今天用HTTP做接口,从站网站服务器上POST提交数据,然后得到返回结果,但发现返回的中文结果并不是直接的中文,而是类似\u6210\u529f,所以在网上找了段代码,但网上的是CLASS(ZCL_CHINESE_TOOL )的,所以自己转换了一下做成了函数。

在函数中的类型:ZUNICODE_FLAG,其实可以直接设置成STRING就成了,我这里只是为了记录一下,可传的参数,其中内容可为:

ABAP,UNICODE中文编码转换 - 第1张  | 优通SAP



外加:&*

在使用中发现, ‘\\u ‘    的内容为下横线 “ _”的UNICODE,

所以上面加入了一个特殊转换,可能还会有其它的特殊转换内容,可以此加入,原因可能如下,以下为网上找来的,更多内容可参看: https://www.cnblogs.com/jiangzhengjun/p/4265650.html

Java中的Unicode编码是采用高字节序(符合人的阅读习惯),而ABAP中是采用低字节序(符合机器存储结构)(注意,可能与测试的环境有关。经测试,与测试环境确实有关系,请看下面在AIX机器上的测试结果——高字节顺序——高字节在前,低字节在后,符合人的阅读习惯,但与机器存储刚好相反——内存是从左到右字节地址越来越大,即内存前面是低字节,而后面是高字节。正是因为ABAP不像Java那样跨平台,所以在ABAP中可以通过CL_ABAP_CHAR_UTILITIES=>ENDIAN获得当前SAP所在的服务器的字节序类别;但是Java是跨平台的,在任何平台下都是采用上面的高字节序)
最后编辑:
作者:yangsen
有需要可在文章留言或者邮件yan252@163.com给我。

留下一个回复

你的email不会被公开。

6 − 6 =