[SAP ABAP开发技术总结]字符编码与解码、Unicode

DATA xstr TYPE xstring 
DATA :  l_codepage TYPE 
DATA :  l_encoding 20 ). 
********** 字符集名与内码转换 
" 将外部字符集名转换为内部编码 
CALL FUNCTION 'SCP_CODEPAGE_BY_EXTERNAL_NAME' 
  EXPORTING 
    external_name 'UTF-8' 
  IMPORTING 
    sap_codepage  l_codepage 
l_encoding l_codepage 
********** 编码 
DATA convout TYPE REF TO cl_abap_conv_out_ce 
" 创建编码对象 
convout cl_abap_conv_out_ce => create encoding l_encoding ). 
convout -> write data 测试 ' ). 编码 
xstr =  convout -> get_buffer ( ). 获取码流 
WRITE / xstr "E6B19FE6ADA3E5869B 
********** 解码 
DATA convin TYPE REF TO cl_abap_conv_in_ce 
" 创建解码对象 
convin cl_abap_conv_in_ce => create encoding l_encoding input xstr ). 
DATA str TYPE string 
CALL METHOD convin -> read 解码 
  IMPORTING data str 
WRITE / str 

使用CL_ABAP_CODEPAGE类进行编解码:

DATAxstr TYPE xstring,
      str  TYPE string,
      l_codepage(4TYPE ,
      l_encoding(20).
**********字符集名与内码转换
"将外部字符集名转换为内部编码
CALL FUNCTION 'SCP_CODEPAGE_BY_EXTERNAL_NAME'
  EXPORTING
    external_name 'UTF-8'
  IMPORTING
    sap_codepage  l_codepage.
WRITE/  l_codepage.
"等同于下面类方法
l_codepage cl_abap_codepage=>sap_codepage'UTF-8' ).
WRITE/  l_codepage.

"编码
xstr cl_abap_codepage=>convert_to(
  source      '测试
  codepage    `UTF-8` ).
WRITE/ xstr.
"解码
str cl_abap_codepage=>CONVERT_FROM(
  source      =  xstr
  codepage    `UTF-8` ).
WRITE/ str.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值