Schreiben in eine Datei

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
10 Beiträge • Seite 1 von 1
10 Beiträge Seite 1 von 1

Schreiben in eine Datei

Beitrag von BW (ForumUser / 4 / 0 / 0 ) »
Hallo,

ich habe folgendes Problem. Ich habe eine *.csv Datei auf dem Applikationsserver. Ich will eine neue Zeile in diese Datei anfügen. Allerdings soll diese Zeile am Anfang der Datei positioniert werden. Die Anweisung OPEN DATASET file APPENDING positioniert Cursor am Ende der Datei. :?

Hat jemand Ideen, wie man das Problem lösen könnte?

Danke!!! 8)

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
einlesen, Zeile einfügen, neu schreiben.
...Enno...

AT POSITION p

Beitrag von rico (ForumUser / 1 / 0 / 0 ) »
Probieren Sie bitte mit zum Zusatz 'AT POSITION p'. Mit diesem Zusatz wird die explizite Dateiposition p in Bytes ab Dateianfang angegeben.

Z.B: OPEN... FOR INPUT AT POSITION p.

Viel Grlück
:)

Schreiben in eine Datei

Beitrag von BW (ForumUser / 4 / 0 / 0 ) »
@Enno: Wohin soll ich die Datei einlesen?

@Rico: Der Zusatz POSITION funktioniert nicht mit APPENDING. Mit INPUT kann die daten nicht in die Datei schreiben.

Re: Schreiben in eine Datei

Beitrag von JHM (Top Expert / 1188 / 1 / 195 ) »
BW hat geschrieben: @Rico: Der Zusatz POSITION funktioniert nicht mit APPENDING. Mit INPUT kann die daten nicht in die Datei schreiben.
Wie wärs mit UPDATE anstatt APPENDING?
Gruß Hendrik

...

Beitrag von BW (ForumUser / 4 / 0 / 0 ) »
Wenn ich Update nehme, dann wird die erste Zeile überschrieben.

...

Beitrag von Inga (ForumUser / 1 / 0 / 0 ) »
Dann mit 'INSERT'... :shock:

Re: Schreiben in eine Datei

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
BW hat geschrieben:@Enno: Wohin soll ich die Datei einlesen?
in eine interne Tabelle.

Beitrag von zzcpak (Expert / 673 / 5 / 67 ) »
z.B. so.

Code: Alles auswählen.

DATA: it_file TYPE STANDARD TABLE OF string,
      wa_file TYPE string,
      gl_new TYPE string,
      file TYPE string.

file = '   <dein Dateiname>    '.

gl_new = 'Dies ist der neue erste Satz der Datei'.

* 1. Schritt: Datei komplett einlesen
OPEN DATASET file FOR INPUT IN TEXT MODE ENCODING DEFAULT.
IF sy-subrc = 0.
* 2. Schritt: den neuen Text am Textanfang plazieren
  APPEND gl_new TO it_file.
  DO.
    READ DATASET file INTO wa_file.
    IF sy-subrc = 0.
      APPEND wa_file TO it_file.
    ELSE.
      EXIT.
    ENDIF.
  ENDDO.
  CLOSE DATASET file.
ENDIF.

* 3. Schritt: Die Datei wieder speichern
OPEN DATASET file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
IF sy-subrc = 0.
  LOOP AT it_file INTO wa_file.
    TRANSFER wa_file TO file.
  ENDLOOP.
  CLOSE DATASET file.
ENDIF.

Beitrag von BW (ForumUser / 4 / 0 / 0 ) »
Vielen Dank!!! Hat super gut funktioniert!!! :lol:
zzcpak hat geschrieben:z.B. so.

Code: Alles auswählen.

DATA: it_file TYPE STANDARD TABLE OF string,
      wa_file TYPE string,
      gl_new TYPE string,
      file TYPE string.

file = '   <dein Dateiname>    '.

gl_new = 'Dies ist der neue erste Satz der Datei'.

* 1. Schritt: Datei komplett einlesen
OPEN DATASET file FOR INPUT IN TEXT MODE ENCODING DEFAULT.
IF sy-subrc = 0.
* 2. Schritt: den neuen Text am Textanfang plazieren
  APPEND gl_new TO it_file.
  DO.
    READ DATASET file INTO wa_file.
    IF sy-subrc = 0.
      APPEND wa_file TO it_file.
    ELSE.
      EXIT.
    ENDIF.
  ENDDO.
  CLOSE DATASET file.
ENDIF.

* 3. Schritt: Die Datei wieder speichern
OPEN DATASET file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
IF sy-subrc = 0.
  LOOP AT it_file INTO wa_file.
    TRANSFER wa_file TO file.
  ENDLOOP.
  CLOSE DATASET file.
ENDIF.

Seite 1 von 1

Vergleichbare Themen

6
Antw.
4759
Views
Datei auf Applikationsserver schreiben
von cali » 19.12.2005 10:21 • Verfasst in ABAP® Core
1
Antw.
1434
Views
Hexadezimal in Datei schreiben
von MQ6 » 28.03.2007 07:43 • Verfasst in ABAP® Core
10
Antw.
12084
Views
Datei auf ein NON-SAP System schreiben
von mettes » 17.02.2013 23:10 • Verfasst in Basis
11
Antw.
5886
Views
String in txt Datei schreiben.
von behnm » 07.05.2008 08:44 • Verfasst in ABAP Objects®
7
Antw.
3684
Views
Daten in Datei schreiben
von genadi » 20.04.2006 11:12 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Zugriff auf Daten via Webdav
vor einer Stunde von msfox 2 / 36
Interne Tabelle
vor 18 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Zugriff auf Daten via Webdav
vor einer Stunde von msfox 2 / 36
Interne Tabelle
vor 18 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141