如何处理字符串和XString中的空值?

2020-09-13 00:19发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我遇到的问题是字符串中的空值,它是十六进制代码xstring。 我在一个字段中具有数据类型LCHR的一些数据。 此字段包含如下数据:

" SAPMSDYP MBatch输入####%PC 60317081539#?"

我有一个程序。 我只是将此数据附加到字符串变量,然后将此字符串转换为xstring数据。 字符串的长度为53,转换为xstring后,xstring数据的长度大于字符串数据的长度。 在字符串数据中,无论哪里有"#",它在原始数据(xstring)中都将为" 0"。 转换之后,我只是使用http_client将数据发送到我的java程序。 在Java端,如果传入数据在数据之间具有空值,则此Java程序将拒绝此数据。 主要问题是我只能在我的abap程序中处理这些空值。

对于从字符串到xstring的转换,我正在使用以下代码:CL_ABAP_CONV_OUT_CE => create(

encoding ='UTF-8'

endian ='L')。

转换->转换(导出数据=文字

正在导入缓冲区=缓冲区1)。

在这里,我只能在ABAP程序中的字符串数据或xstring数据中处理此null("#")值。 我不知道该怎么做。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我遇到的问题是字符串中的空值,它是十六进制代码xstring。 我在一个字段中具有数据类型LCHR的一些数据。 此字段包含如下数据:

" SAPMSDYP MBatch输入####%PC 60317081539#?"

我有一个程序。 我只是将此数据附加到字符串变量,然后将此字符串转换为xstring数据。 字符串的长度为53,转换为xstring后,xstring数据的长度大于字符串数据的长度。 在字符串数据中,无论哪里有"#",它在原始数据(xstring)中都将为" 0"。 转换之后,我只是使用http_client将数据发送到我的java程序。 在Java端,如果传入数据在数据之间具有空值,则此Java程序将拒绝此数据。 主要问题是我只能在我的abap程序中处理这些空值。

对于从字符串到xstring的转换,我正在使用以下代码:CL_ABAP_CONV_OUT_CE => create(

encoding ='UTF-8'

endian ='L')。

转换->转换(导出数据=文字

正在导入缓冲区=缓冲区1)。

在这里,我只能在ABAP程序中的字符串数据或xstring数据中处理此null("#")值。 我不知道该怎么做。

付费偷看设置
发送
3条回答
风早神人
1楼-- · 2020-09-13 01:23

我建议先使用cl_http_utility => encode_x_base64(lv_bin)将xstring转换为BASE64。

天桥码农
2楼-- · 2020-09-13 01:04

我不知道您的源数据,但我不认为#在字符串中为空。 据我所知,abap中不存在null值...或者至少与java不相同:

https://help.sap.com/doc/ abapdocu_751_index_htm/7.51/zh-CN/abenopen_sql_null_values.htm

所以我认为应该使用CRLF,水平制表符或某些字体缺失等特殊字符...我建议从此处开始挖掘。 。
小灯塔
3楼-- · 2020-09-13 01:15

嗨,雅克,

我也尝试过此操作,但是我得到的是相同问题的相同数据。

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...

相关问答