Decoding BASE64 in ABAP
2016-05-26 18:13
274 查看
Code Gallery Decoding BASE64 in ABAP Skip to end of metadata Created by Frank Klausner, last modified by Manish Kumar on Aug 21, 2013 Go to start of metadata Author: Frank Klausner Submitted: June 26, 2007 There are routines proposed below, first one is to convert base64 to a string, and second one to a xstring. Third one was mentioned by Sandra in comments section. A small form routine to decode base64 (TYPE STRING) into plaintext (TYPE STRING) : FORM decode_base64 USING base64 TYPE string, CHANGING plaintext TYPE string. CHECK base64 IS NOT INITIAL. CONSTANTS: lc_op_dec TYPE x VALUE 37. DATA: l_xstr TYPE xstring, lr_conv TYPE REF TO cl_abap_conv_in_ce. CALL 'SSF_ABAP_SERVICE' ID 'OPCODE' FIELD lc_op_dec ID 'BINDATA' FIELD l_xstr ID 'B64DATA' FIELD base64. "#EC CI_CCALL TRY. lr_conv = cl_abap_conv_in_ce=>create( input = l_xstr ). lr_conv->read( IMPORTING data = plaintext ). CATCH cx_sy_conversion_codepage. CLEAR plaintext. MESSAGE i999(samx) WITH text-004 text-005. ENDTRY. ENDFORM. A small form routine to decode base64 (TYPE STRING) into xstring (TYPE XSTRING) : FORM decode_base64_to_xstring USING i_base64 TYPE string CHANGING e_xstring TYPE xstring. CALL FUNCTION 'SSFC_BASE64_DECODE' EXPORTING b64data = i_base64 IMPORTING bindata = e_xstring EXCEPTIONS OTHERS = 8. ENDFORM. Conversion from base64 to string may also be achieved by this small code : CALL METHOD cl_http_utility=>if_http_utility~decode_base64 EXPORTING encoded = l_string_base64 RECEIVING decoded = l_string. snippet abap web conversion 1 Comment User icon: c0cbtrx Sandra Rossi Conversion from base64 to string may also be achieved by this small code : CALL METHOD cl_http_utility=>if_http_utility~decode_base64 EXPORTING encoded = l_string_base64 RECEIVING decoded = l_string.
相关文章推荐
- readln
- CUDA之矩阵乘法——非方阵计算
- css 文本超出2行就隐藏并且显示省略号
- echarts按需压缩对应的模块
- android真机调试时,访问本地服务ip设置
- 畅通工程 - 并查集的应用
- Xcode编译出现的二进制错误(xxname.o)
- 1000以内任意10个整数之和
- android 中SD卡访问权限问题【转自Eagle的博客】
- bzoj 4460 : [Jsoi2013]广告计划
- vb登陆界面设计
- iOS客户端、java服务器的通信用RSA加密
- java50中经典算法
- synchronized详解
- iOS HTTP接口授权
- VMware 11安装Mac OS X 10.10 及安装Mac Vmware Tools(超详细),以及动态调整虚拟机硬盘大小
- 如何在文章/随笔中添加可运行的js代码
- Android字符串格式化
- iOS8 下定位失败问题
- Mangos0世界帧同步计算辨析