Chinaunix首页 | 论坛 | 博客
  • 博客访问: 710189
  • 博文数量: 145
  • 博客积分: 3446
  • 博客等级: 中校
  • 技术积分: 1567
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-30 13:58
文章分类

全部博文(145)

文章存档

2021年(1)

2020年(1)

2019年(1)

2018年(6)

2017年(1)

2016年(10)

2015年(12)

2014年(10)

2013年(15)

2012年(33)

2011年(21)

2010年(9)

2009年(18)

2008年(2)

2006年(5)

我的朋友

分类: Web开发

2014-04-17 15:56:37

* 46C以下的版本:
  DATA: l_string TYPE string.
  DATA: l_enter  TYPE string VALUE '0D0A'.  "回车
  CONSTANTS: l_tab TYPE x VALUE '09'.

  * 470以上的版本:
*TAB分隔符
  CLASS cl_abap_char_utilities DEFINITION LOAD.
  CONSTANTS: l_tab TYPE VALUE cl_abap_char_utilities=>horizontal_tab.

所有字符在下面的类中:
cl_abap_char_utilities=>horizontal_tab — 09
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=>CR_LF(1)
cl_abap_char_utilities=>CR_LF 1(1)

从EXCEl文件中传上的文件的回车符就是cl_abap_char_utilities=>CR_LF 1(1)

****************************************************另一篇博文

ABAP中有关于换行符,TAB KEY等 收藏

① 换行符,TAB KEY等的表示
在数据文件输出的时候,有时候需要使各个字段间用TAB KEY进行分割。
那么,TAB KEY在ABAP中是如何表示的,就是写入一个TAB KEY吗?
事实上,在类对象CL_ABAP_CHAR_UTILITIES中已经事先定义好了如换行符,TAB KEY等。
CR_LF 换行符
HORIZONTAL_TAB 水平方向的TAB KEY
VERTICAL_TAB 竖直方向的TAB KEY
FORM_FEED 改页
例: CONCATENATE COL1 COL2 CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB INTO …

② 换行符,TAB KEY等在DB中保存
换行符,TAB KEY等在SAP的DB中被存为“#“。
虽然被保存为#,但在报表中仍能正常显示。

③ 换行符,TAB KEY等的置换处理
换行符,TAB KEY等的置换不能简单的用REPLACE命令进行处理。
正确的处理如下:
CALL FUNCTION 'NLS_GET_FRONTEND_CP'
EXPORTING
LANGU = SY-LANGU
IMPORTING
FRONTEND_CODEPAGE = CPCODEPAGE
EXCEPTIONS
ILLEGAL_SYST_CODEPAGE = 1
NO_FRONTEND_CP_FOUND = 2
INTERNAL_OR_DB_ERROR = 3
OTHERS = 4.

CALL FUNCTION 'SCP_REPLACE_STRANGE_CHARS'
EXPORTING
INTEXT = INTEXT
INTER_CP = CPCODEPAGE
REPLACEMENT = 32
IMPORTING
OUTTEXT = OUTTEXT
EXCEPTIONS
INVALID_CODEPAGE = 1
CODEPAGE_MISMATCH = 2
INTERNAL_ERROR = 3
CANNOT_CONVERT = 4
FIELDS_NOT_TYPE_C = 5
OTHERS = 6.

阅读(3635) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~