Öffnen einer Datei für das Schreiben an das Ende der Datei Dokument im Navigationsbaum lokalisieren

Um eine Datei für das Schreiben an das Ende der Datei zu öffnen, benutzen Sie den Zusatz FOR APPENDING der Anweisung OPEN DATASET:

Syntax

OPEN DATASET <dsn> FOR APPENDING.

Diese Anweisung öffnet eine Datei für das Schreiben an das Ende dieser Datei. Wenn die Datei nicht existiert, wird sie angelegt. Wenn sie bereits existiert und geschlossen ist, öffnet das System die Datei und setzt die Positionierung an das Ende der Datei. Wenn die Datei existiert und bereits geöffnet ist (für Lese- oder Schreibzugriff oder für das Schreiben an das Ende der Datei), wird die Positionierung an das Ende der Datei gesetzt. SY-SUBRC gibt immer 0 zurück.

Hinweis

Es ist besserer Programmierstil, bei bereits geöffneten Dateien die CLOSE-Anweisung zu benutzen, bevor sie erneut geöffnet werden (Informationen zum Schließen von Dateien finden Sie in Schließen einer Datei).

Beispiel

DATA fname(60) TYPE c VALUE 'myfile'.

DATA num TYPE I.

OPEN DATASET fname FOR OUTPUT.
DO 5 TIMES.
   num = num + 1.
   TRANSFER num TO fname.
ENDDO.

OPEN DATASET fname FOR INPUT.

OPEN DATASET fname FOR APPENDING.
num = 0.
DO 5 TIMES.
   num = num + 10.
   TRANSFER num TO fname.
ENDDO.

OPEN DATASET fname FOR INPUT.
DO.
  READ DATASET fname INTO num.
  IF sy-subrc <> 0.
    EXIT.
  ENDIF.
  WRITE / num.
ENDDO.

Ausgabe:

1
2
3
4
5
10
20
30
40
50

In diesem Beispiel wird eine Datei "myfile" für den Schreibzugriff geöffnet und mit fünf Ganzzahlen von 1 bis 5 gefüllt (Informationen zur Anweisung TRANSFER finden Sie in Daten in Dateien schreiben). Die nächste OPEN DATASET-Anweisung setzt die Positionierung auf den Anfang zurück. Dann wird die Datei für das Schreiben an das Ende der Datei geöffnet, und die Positionierung wird an das Ende gesetzt. Fünf Ganzzahlen von 10 bis 50 werden in die Datei geschrieben. Schließlich wird der Inhalt der Datei gelesen und auf dem Bildschirm ausgegeben.

 

 

 

Ende des Inhaltsbereichs