日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【转】ABAP BASE64编码与解码练习

發(fā)布時(shí)間:2025/3/20 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】ABAP BASE64编码与解码练习 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、功能描述

  練習(xí)ABAP中的Base64編碼/解碼,以及字符編碼轉(zhuǎn)換

二、相關(guān)函數(shù)及類接口

1、SCMS_STRING_TO_XSTRING?????? String 轉(zhuǎn) Xstring (按照指定字符編碼)

2、SCMS_BASE64_ENCODE_STR???? Base64 編碼

3、SCMS_BASE64_DECODE_STR???? Base64 解碼

4、SCP_CODEPAGE_BY_EXTERNAL_NAME??????? 獲得Codepage

5、cl_abap_conv_in_ce?????????????????????????Xstring轉(zhuǎn)String? (按照指定字符編碼)

三、練習(xí)代碼

*&---------------------------------------------------------------------* *& Report ZQBTEST_15 *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------*REPORT zqbtest_15.PARAMETERS: p_instr TYPE string,p_code TYPE c LENGTH 128 DEFAULT 'GBK'.DATA: instr TYPE string,xstr TYPE xstring,encode_str TYPE string,charset TYPE string,mimetype(128) TYPE c.instr = p_instr.WRITE : / ' Instr:' ,instr.charset = p_code.CONCATENATE '"text/html; charset=' p_code '"' INTO mimetype.CALL FUNCTION 'SCMS_STRING_TO_XSTRING'EXPORTINGtext = instrmimetype = mimetypeIMPORTINGbuffer = xstrEXCEPTIONSfailed = 1OTHERS = 2. IF sy-subrc <> 0. * Implement suitable error handling here ENDIF.WRITE : / ' Xstr:' ,xstr.CALL FUNCTION 'SCMS_BASE64_ENCODE_STR'EXPORTINGinput = xstrIMPORTINGoutput = encode_str.WRITE : / 'Encode:' ,encode_str.* 2018.08.18 若http用Get方式作為URL一部分需要將+替換成%2B DATA: out TYPE string . out = encode_str. REPLACE ALL OCCURRENCES OF '+' IN out WITH '%2B'.WRITE: / ' Out:', out. * 2018.08.18 endCLEAR xstr. CALL FUNCTION 'SCMS_BASE64_DECODE_STR'EXPORTINGinput = encode_str * unescape = 'X'IMPORTINGoutput = xstrEXCEPTIONSfailed = 1OTHERS = 2. IF sy-subrc <> 0. * Implement suitable error handling here ENDIF.WRITE : / 'Decode:' ,xstr.DATA: codepage(4) TYPE n. DATA: encoding(20) TYPE c. DATA: convin TYPE REF TO cl_abap_conv_in_ce. DATA: str TYPE string.CALL FUNCTION 'SCP_CODEPAGE_BY_EXTERNAL_NAME'EXPORTINGexternal_name = charsetIMPORTINGsap_codepage = codepageEXCEPTIONSnot_found = 1OTHERS = 2. IF sy-subrc <> 0. * Implement suitable error handling here ENDIF. encoding = codepage."創(chuàng)建解碼對(duì)象 convin = cl_abap_conv_in_ce=>create( encoding = encoding input = xstr ). CALL METHOD convin->read( IMPORTING data = str ). WRITE: / 'Encode:' ,str.

四、執(zhí)行結(jié)果

?

?

總結(jié)

以上是生活随笔為你收集整理的【转】ABAP BASE64编码与解码练习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。