代码改变世界

ABAP 文本下载到EXCEL时可能会导致换行的文本字符/字符串

  覆盆子  阅读(737)  评论(0编辑  收藏  举报

通过call function 'WS_DOWNLOAD'进行数据下载时,文本中往往可能存在英文双引号“、换行符或者回车,导致下载到EXCEL里面的数据被无故换行,所以在数据写入前,需要先将相关字符串里面的这些特殊字符进行处理,比如删除(删除当然会改变文本)

下面就是做的一个删除的动作

 

46C以下的版本:

    DATA: gc_result(50) type c.

    constants: con_tab type x value '09'.

    *CONCATENATE 'text01' con_tab 'text02' con_tab 'text03' into gc_result.

    470以上的版本:

    class cl_abap_char_utilities definition load.

    constants: c_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB.

    *CONCATENATE 'text01' c_tab 'text02' c_tab 'text03' into gc_result. 

    REPLACE c_tab WITH '' INTO GV_SGTXT.   "替换GV_SGTXT里面的特殊符号

 

    在ABAP开发中,还存在其他特殊字符的使用情况,我们一块来了解一下:

    类cl_abap_char_utilities中的特殊字符列表如下:

    cl_abap_char_utilities=>horizontal_tab — 09    TAB符

    cl_abap_char_utilities=>CR_LF ———-- 0D0A    回车换行

    cl_abap_char_utilities=>VERTICAL_TAB —- 0B    垂直制表符

    cl_abap_char_utilities=>NEWLINE —---- 0A    换行

    cl_abap_char_utilities=>FORM_FEED —--- 0C    换页

    cl_abap_char_utilities=>BACKSPACE —---08    退格符

    CL_ABAP_CHAR_UTILITIES=>BYTE_ORDER_MARK_LITTLE-----(utf-16le')的文件头

CL_ABAP_CHAR_UTILITIES=>BYTE_ORDER_MARK_UTF8-------(utf-8)的文件

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示