Debugging 无法处理变量中的符号#

Debugging 无法处理变量中的符号#,debugging,abap,Debugging,Abap,我从前端获得了一个CSV文件作为XString,在我将其转换为字符串后,它看起来如下所示: 在下一步中,我将尝试执行SPLIT lv#u string AT'###'到表itab中,这样我就可以获取数据,但它不会分割任何内容,itab包含一行等于lv#u string 如果我尝试将lv_字符串中的“#”替换为空格,lv_字符串不会更改,并且sy subrc为4 从我的角度来看,我有这个问题,因为符号#在这个上下文中被SAP用作的符号(转换字节->字符串的结果) 我的问题是:在这种情况下,如何使

我从前端获得了一个CSV文件作为XString,在我将其转换为字符串后,它看起来如下所示:

在下一步中,我将尝试执行
SPLIT lv#u string AT'###'到表itab
中,这样我就可以获取数据,但它不会分割任何内容,
itab
包含一行等于
lv#u string

如果我尝试将lv_字符串中的“#”替换为空格,
lv_字符串
不会更改,并且
sy subrc
为4

从我的角度来看,我有这个问题,因为符号
#
在这个上下文中被SAP用作的符号(转换字节->字符串的结果)

我的问题是:在这种情况下,如何使用拆分/替换为
#


我还认为在将XString转换为字符串时可以更改SAP代码页,但我已经使用了SAP代码页
4110
(utf-8),并且不知道更好的替代方法…

当使用调试器显示变量时,它会为所有未分配字形的变量显示通用字符
#
(U+0023)(如您所说的“不可打印符号”)

如果变量对应于文本文件的内容,并且经常出现
##
,则很可能是Windows文件中对应于“”的控制字符U+000D和U+000A的组合

在后端调试器中,您可以通过单击按钮“Hexadezimal”(显示在屏幕截图中)来检查这些字符的十六进制值


您可以使用包含这两个控制字符的变量
CL\u ABAP\u CHAR\u UTILITIES=>CR\u LF

您太棒了!感谢您的帮助,尤其是详细的解释!我希望我能给您更多的分数!