字符串加回车换行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)
DATA: crlf(2) TYPE c.
crlf = cl_ABAP_char_utilities=>cr_lf. "换行符
在字符串中加入回车换行或TAB字符,在其他语言可以使用$13$10的ASCII码进行插入.而在abap里却出错,为了解决此问题,请使用sap的类CL_ABAP_CHAR_UTILITIES.
CL_ABAP_CHAR_UTILITIES中有字符常量:如:CR_LF,HORIZONTAL_TAB,NEWLINE等等.
例:
DATA: crlf(2) TYPE c.
DATA: l_html(4096) TYPE C.
crlf = cl_ABAP_char_utilities=>cr_lf.
CONCATENATE l_html crlf '_FUNCTION'
'30'
'WWW_GET_REPORT' '>' INTO l_html.
----
调用方法产生文件路径对话框
DATA: p_file LIKE rlgrap-filename.
FIELD-SYMBOLS <fs> TYPE file_table.
FIELD-SYMBOLS <f>.
DATA: f_table TYPE filetable.
DATA: rc TYPE i.
DATA: user_action TYPE i.
DATA: l_index TYPE i.
CALL METHOD cl_gui_frontend_services=>file_open_dialog
EXPORTING
window_title = '请选择要汇入的文件'
file_filter = 'Excel files (*.XLS)|*.XLS'
initial_directory = 'D:\'
CHANGING
file_table = f_table
rc = rc
user_action = user_action
EXCEPTIONS
cntl_error = 1
file_open_dialog_failed = 2
error_no_gui = 3.
CALL METHOD cl_gui_cfw=>flush
EXCEPTIONS cntl_system_error = 1
cntl_error = 2.
CLEAR p_file.
READ TABLE f_table ASSIGNING <fs> INDEX 1.
IF sy-subrc = 0.
p_file = <fs>-filename.
ENDIF.
在编写SAP程序时,程序员经常需要将常字符串进行分割,在字符串中加入回车换行或TAB字符,在其他语言可以使用$13$10的ASCII码进行插入.而在abap里却出错,为了解决此问题,请使用sap的类CL_ABAP_CHAR_UTILITIES.
CL_ABAP_CHAR_UTILITIES中有字符常量:如:CR_LF,HORIZONTAL_TAB,NEWLINE等等.
下面给出字符串中加入回车换行的示例:
DATA: crlf(2) TYPE c.
DATA: l_html(4096) TYPE C.
crlf = cl_ABAP_char_utilities=>cr_lf.
CONCATENATE l_html crlf '_FUNCTION'
'30'
'WWW_GET_REPORT' '>' INTO l_html.
string的标准函数
查找: FIND [{FIRST OCCURRENCE}|{ALL OCCURRENCES} OF] pattern IN dobj
替换: REPLACE [{FIRST OCCURRENCE}|{ALL OCCURRENCES} OF] pattern IN dobj WITH new
REPLACE SECTION [OFFSET off] [LENGTH len] OF dobj WITH new
移动:SHIFT c [BY n PLACES] [mode]
拼接:CONCATENATE c1 ... cn INTO c [SEPARATED BY s]
分割:SPLIT c AT del INTO c1 ... cn.
大小写转换:TRANSLATE text TO UPPER CASE.
TRANSLATE text TO LOWER CASE.
字符串覆盖:OVERLAY c1 WITH c2 [ONLY str].
压缩字符串:CONDENSE c [NO-GAPS].
系统扩张的string函数(函数组CSTR)
STRING_LENGTH
STRING_CONCATENATE
STRING_MOVE_RIGHT
STRING_REVERSE
STRING_SPLIT
STRING_CENTER
TEXT_SPLIT
STRING_SPLIT_AT_POSITION
OVERLAY_BYTE
SJIS_SBC_TO_DBC
SJIS_DBC_TO_SBC