SAP 字符里回车和换行符处理(标准类方法 cl_abap_char_utilities=>cr_lf)

在十六进制里,回车和换行是两个字符 0D00 是回车,0A00是换行,但是在SAP上都显示成#号,如下
在这里插入图片描述
前两个是回车,第三个是#

十六进制在数学中是一种逢16进1的进位制,一般用数字0到9和字母A到F(或a-f)表示,其中A-F表示10~15,这些称作十六进制数字,题主所问的代表如下:

1、“0D”是把光标移到同一行的顶头——回车(CR)。

2、“0A”是把光标移到下一行——换行(LF)。

3、16进制代码中“0A”是换行,如果只有“0D”,那么光标会回到这一行的开始处,只有“0A“、”0D”一起用,才能使光标到下一行的开始处。

那我们怎么在程序里替换掉这东西呢
首先,定义三个变量

    DATA ls_char TYPE char2. "记录回车、换行符
    DATA:p_hc TYPE char1,    "回车的16进制
         p_hh TYPE char1.    "换行的16进制

然后先获取回车和换行符号 : cl_abap_char_utilities=>cr_lf , 再分别把回车和换行分别赋值给回车符号和换行符号
在这里插入图片描述
在这里插入图片描述
代码如下:

    ls_char = cl_abap_char_utilities=>cr_lf.  " 获取回车、换行符
    p_hc = ls_char+0(1). "回车
    p_hh = ls_char+1(1). "换行

然后去替换字符串里的符号

      "回车符号处理
      REPLACE ALL OCCURRENCES OF p_hc IN t_ftp-txz01 WITH ' '.
      "换行符号处理
      REPLACE ALL OCCURRENCES OF p_hh IN t_ftp-txz01 WITH ' '.

DEBUG 看一下
在这里插入图片描述
这样就一次性获取到两个符号了
完美

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值