READ 'files' [BINARY | RECORD | STRIP] | '( filelist )' | [rng] (n) [SUBDIR] [OPEN]
files Kommen im Dateinamen die Jokerzeichen "?" (ersetzt genau ein Zeichen) oder "*" (ersetzt eine beliebig lange, auch leere Zeichenfolge) vor, werden alle Dateien, die das Suchmuster erfüllen, hintereinander in den aktuellen Arbeitsbereich eingelesen. Das gleiche gilt, falls ein Dateiname ohne Jokerzeichen in Verbindung mit der Option SUBDIR angegeben wird. Das Kommando kann auch mehrmals in einem Arbeitsbereich aufgerufen werden. Die zusätzlich ausgewählten Dateien werden dann am Schluss des Arbeitsbereichs angehängt.
(filelist) Dateiname einer Datei, in der für jede einzulesende Datei ein Satz mit dem Dateinamen steht. Die Dateinamen können wahlweise auch durch Anführungszeichen eingeschlossen sein ("TESTDATEI"). Die Option SUBDIR ist bei dieser Variante nicht zulässig.
[rng] (n) Voraussetzung für diese Option ist, dass die auszuwertenden Zeilen jeweils einen Dateinamen enthalten. Eine solche Liste von Dateinamen kann z.B. mit dem Kommando FSTAT erzeugt werden. Alle Dateien, deren Dateinamen in dem Zeilenbereich rng stehen, werden hintereinander in den Arbeitsbereich n eingelesen. Die Option SUBDIR ist bei dieser Variante nicht zulässig.
OPEN Die Daten werden nicht in den Arbeitsspeicher, sondern in eine temporäre Datei eingelesen. Im Speicher wird nur ein Verzeichnis der Datensätze mit den Plattenadressen angelegt. Neue bzw. geänderte Datensätze werde ebenfalls in die temporäre Datei geschrieben. Die Gesamtgröße aller einzulesenden Dateien darf max. 1024 GB betragen.
Beim Zurückschreiben der geänderten Datei mit dem Kommando REWRITE werden die Daten aus der temporären Datei in die entsprechenden Ausgabedateien geschrieben.
SUBDIR Neben dem angegebenen Verzeichnis bzw. dem aktuellen Verzeichnis werden auch alle Unterverzeichnisse rekursiv durchsucht, d.h. mit dem Kommando READ 'C:\*.BAT'SUB erhalten Sie z.B. alle BAT-Dateien aller Verzeichnisse des Laufwerks C. Ohne die Option SUB wird nur das Root-Verzeichnis durchsucht. Diese Option ist nicht zulässig bei den Varianten (filelist) und [rng] (n)
Hinweise:
Bei Betätigen der rechten Maus-Taste wird ein zusätzliches Untermenü für die Bearbeitung der aktuellen Datei zur Verfügung gestellt.
Das Einlesen von mehreren Dateien kann auch über das Menü Datei/Öffnen mehrfach ... erfolgen.
Vor dem Beginn einer neuen Datei wird eine Zeile mit dem Dateinamen, der Größe der Datei und dem Datum der letzten Änderung eingefügt. Diese Zeile beginnt mit dem String "$$$***>>>>>>>>>> " (3 x $, 3 x * und 10 x >). Nach der letzten Zeile einer Datei wird ein Endezeile eingefügt, der mit dem String "<<<<<<<<<<***$$$" beginnt und ebenfalls die Statusangaben der Datei enthält.
In der Statuszeile des EDT wird in diesem Modus der Dateiname der jeweils aktuellen Datei angezeigt. Mit dem Kommando SHOW DIR kann ein Inhaltsverzeichnis aller Dateien des Arbeitsbereichs angezeigt werden.
Alle im Arbeitsbereich enthaltenen Dateien können gemeinsam geändert werden, z.B. mit dem Kommando ON...CHANGE, und danach mit dem Kommando REWRITE bzw. dem Menübefehl Datei/Speichern mehrfach in die Ursprungsdateien oder in neue Einzeldateien in einem anderen Verzeichnis geschrieben werden.
Nach dem Einlesen werden folgende Integer-Variablen versorgt:
#I98 enthält die Anzahl der fehlerfrei gelesenen Dateien.
#I99 enthält die Anzahl der Dateien, bei denen ein Fehler aufgetreten ist.
Wird in einer EDT-Prozedur nach dem Einlesen das Kommando ON... benutzt, so wird der Dateinamen der Trefferzeile in die String-Variable #S0 geschrieben.
Die Einlesephase kann mit der Schaltfläche oder mit dem Menü Extras/Prozedur oder WAIT abgebrochen werden.
Die vom EDT erzeugte erste und letzte Zeile, die zur Identifizierung der enthaltenen Dateien dienen, dürfen nicht gelöscht oder geändert werden, da dies bei einer Folgeverarbeitung mit dem Kommando REWRITE zu Fehlern führen kann.
Beispiel:
read '*.ini' alle Dateien mit Extension ini in den
            aktuellen Arbeitsbereich einlesen.
fstat'*.*'r Liste mit allen Dateien einschl. Dateien
            der Unterverzeichnisse erstellen.
            Nach dem FSTAT wird automatisch der
            Arbeitsbereich 9 angezeigt.
read &(2)   Alle Dateien der FSTAT-Liste in den
            Arbeitsbereich 2 einlesen oder.
read 1-900(2) Die ersten 900 Dateien der FSTAT-Liste in
            den Arbeitsbereich 2 einlesen.
read '(list)' Es werden alle Dateien eingelesen, deren
            Dateinamen in der Datei list enthalten
            sind (datei1, datei2, datei3).
            Inhalt der Datei list:
            datei1
datei2
datei3
read 'c:\*.ini' SUBDIR
Es werden alle INI-Dateien eingelesen, die
            sich auf dem Laufwerk C befinden
read 'c:\edtw.ini' SUBDIR
Es werden alle Dateien mit dem Namen
            EDTW.INI eingelesen, die sich auf
            dem Laufwerk C befinden