Skip to content

ABAP Keyword Documentation →  ABAP - Release-Specific Changes →  Changes in Release 7.0 and its EhPs →  Changes in Release 7.0 

File Interface in Release 7.0


1. Handling of the byte order mark

2. Definition of the line end marker


3. Help class for the file interface



4. Trailing blanks in legacy EBCDIC files

Other versions: 7.31 | 7.40 | 7.54

Modification 1

Handling of the Byte Order Mark

When a UTF-8 text file is opened, the handling of the byte order mark (BOM) at the start of the file can be controlled using the new addition SKIPPING|WITH BYTE-ORDER MARK.

Modification 2

Definition of the Line End Marker

When any text file is opened, the line end marker can be defined using the new addition WITH NATIVE|SMART|UNIX|WINDOWS LINEFEED.

The structure of file properties used in the statements GET DATASET and SET DATASET has been enhanced by the addition of the components linefeed and linefeed_mode for the line end marker, so that these can be selected and set for an open file.

Modification 3

Help Class for the File Interface

The static methods of the new class CL_ABAP_FILE_UTILITIES provide information about files on the host computer of the current AS Instance.

Modification 4

Trailing Blanks in EBCDIC Files

For text files handled as legacy EBCDIC files using the addition LEGACY TEXT MODE, the following criteria have been defined:

  • As is also the case with other code pages, trailing blanks are now cut off when writing a legacy EBCDIC text file using TRANSFER. Before Release 7.0, the hexadecimal EBCDIC code "40" was written to the file.
  • When writing to a legacy EBCDIC text file using TRANSFER, it is now padded with the hexadecimal EBCDIC code "40" for blanks if the specified length is greater than that of the data object. Before Release 7.0, it was padded with the ASCII code for blanks.
  • If, when reading a legacy EBCDIC text file using READ DATASET, the target object must be padded with blank characters, it is now padded with the blanks of the current system code page. Before Release 7.0, it was padded with hexadecimal "80".