如何将txt文件末尾的空格设置到文件系统中?

2020-08-31 15:25发布

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

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


大家好,我需要在txt文件的行尾打印空白,请检查下面的代码:


 数据:

      lv_space TYPE字符串,

      TYPE字符串,

      ruta TYPE字符串。



   ruta ='/tmp/file.txt'。



     line ="测试"。

     lv_space = cl_abap_conv_in_ce => uccp('00a0')。

 CONCATENATE行lv_space INTO行。





   传统二进制模式下输出的开放数据集。



      将线转移到ruta。



    CLOSE DATASET ruta。

我的代码可以工作,但是我有一个问题,文件中的空格是一个外来字符,我需要一个空格:

如果我从单词中打开:

有任何方法可以正确地在文件上放置空格,而无需附加字符?

(4.0 kB)

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

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


大家好,我需要在txt文件的行尾打印空白,请检查下面的代码:


 数据:

      lv_space TYPE字符串,

      TYPE字符串,

      ruta TYPE字符串。



   ruta ='/tmp/file.txt'。



     line ="测试"。

     lv_space = cl_abap_conv_in_ce => uccp('00a0')。

 CONCATENATE行lv_space INTO行。





   传统二进制模式下输出的开放数据集。



      将线转移到ruta。



    CLOSE DATASET ruta。

我的代码可以工作,但是我有一个问题,文件中的空格是一个外来字符,我需要一个空格:

如果我从单词中打开:

有任何方法可以正确地在文件上放置空格,而无需附加字符?

(4.0 kB)
付费偷看设置
发送
7条回答
四川大学会员
1楼 · 2020-08-31 15:58.采纳回答

对于每个" TRANSFER LINE"语句,您将获得"换行符"。 我已经执行了您的代码,只有1个换行符。 这意味着第一行和一个空行,这是正确的。 尝试删除" WINDOWS LINEFEED",然后再次执行。

我有一个问题。 您如何打开文件? 您要从任何地方下载它吗?

谢谢

Gourab

SAP小菜
2楼-- · 2020-08-31 15:54

代码错误的解释,对于UCCP,您必须在大写字母中输入字母:

 lv_space = cl_abap_conv_in_ce => uccp('00A0'  )。

如果使用00a0,则将获得lv_space = NULL字符(类似于使用0000)

如果使用带直引号的文本文字(内部类型) 然后是固定长度的C类型),则在赋值和求值过程中忽略尾随空格。 您必须使用反引号(内部类型为STRING字符),以便考虑尾随空格。

clasier
3楼-- · 2020-08-31 15:52

嗨,路易斯·罗伯托·佛朗哥

我可以看到您只是将文本(.txt)传输到应用程序服务器(t-code:AL11)。 因此,您必须使用"文本模式"而不是"二进制模式"。 下面的代码供您参考。 二进制模式用于将二进制数据传输到应用程序模式,例如,如果您要从" GUI"上载文本文档并将其保存在AL11中。

数据:
  lv_space TYPE字符串,
  TYPE字符串,
  ruta TYPE字符串。

 ruta ='/tmp/file.txt'。
 line ="测试"。
 CONCATENATE行lv_space INTO行。
 在默认情况下以文本模式输出的OPEN DATASET RUTA。
 将线转移到ruta。
 CLOSE DATASET ruta。

干杯!

Gourab

N-Moskvin
4楼-- · 2020-08-31 15:55

请在Notepad ++中使用此选项显示不可见字符:

callcenter油条
5楼-- · 2020-08-31 15:51

Gourab Dey

我修改了我的代码:

 数据:

      TYPE字符串,
      ruta TYPE字符串。
   ruta ='/tmp/file.txt'。

   line ="测试"。

 做3次。
  CONCATENATE行``INTO行。

 ENDDO。


 在WINDOWS LINEFEED中以默认编码的文本模式下输出的开放数据集ruta。

      将线转移到ruta。

    CLOSE DATASET ruta。

现在可以正常工作,正确放置空间,但是现在我还有其他问题,该文件开始时又有2个空行,而我只需要一个:

我只需要一行,我不知道为什么我有3行

梦想连接
6楼-- · 2020-08-31 15:57

您正在执行相同的代码? 我不能相信,我从一个z程序下载了该文件,这个z程序允许从文件系统导航,并下载或上传文件或目录,我选择了文件并按了下载:

我只选择要保存的目录并将文件格式更改为ASC

亦是此间程序员
7楼-- · 2020-08-31 16:05

我在记事本中打开了另一台计算机上的文件,我只看到两个ros 具有数据的行,第二个拖曳为空,

如果我打开计算机,会看到一行包含数据,两行和三行为空,但是无论如何,我都需要一条指令来删除空行,或者我不知道该怎么做。 有想法吗?

一周热门 更多>