Klasse "File"

Die Klasse "File" ist nützlich zum Lesen und Schreiben von externen Textdateien.

AccessMode-Aufzählung

Die Klasse "File" enthält eine Aufzählung, die file.open nutzt, um den Modus für eine Datei festzulegen, wenn sie geöffnet wird. Diese Elemente sind das Argument für einen "Open"-Befehl. Ihnen wird das Wort "File" vorangestellt. Die Werte werden angezeigt:

AccessMode-WerteBeschreibung

ReadOnly

Öffnet die Datei als schreibgeschützt

WriteOnly

Öffnet die Datei als lesegeschützt. Wenn zusammen mit "Append" verwendet, wird die Datei nicht abgeschnitten. Wenn allein (oder zusammen mit "Truncate") verwendet, wird die Datei abgeschnitten.

ReadWrite

Öffnet die Datei im Lese-/Schreibmodus. Beachten Sie, dass die Datei nicht abgeschnitten wird.

Append

Öffnet die Datei im Anfügemodus. (WriteOnly muss verwendet werden, um eine Datei anfügbar zu machen: WriteOnly | Append) Zum Schreiben in eine Protokolldatei.

Truncate

Schneidet die Datei ab

Translate

Aktiviert die Zeilenumbrüche und Zeilenvorschub-Verschiebung für Textdateien in Windows

Zum Öffnen einer Datei namens "F" als lesegeschützt geben Sie diesen Befehl ein:

f.open(File.WriteOnly | File.Translate);

Das Flag "Translate" wird für Windows benötigt.

Statische Funktionen

Im Gegensatz zu Methoden verweisen statische Funktionen nicht auf ein bestimmtes Objekt. Zur Verwendung dieser Befehle stellen Sie ihnen "File" voran. Dies weist darauf hin, dass diese Funktionen mit der Klasse "File" verknüpft werden.

Statische FunktionenBeschreibung

exists(filename)

Boolesch: TRUE, wenn fileName vorhanden ist; FALSE, wenn er nicht vorhanden ist (Dateiname = Zeichenfolge)

remove(filename)

Falls der Dateiname bereits vorhanden ist, wird er gelöscht. Wenn nicht, wird eine Ausnahme (Dateiname = Zeichenfolge) zurückgegeben

write(Dateiname, Inhalt)

Schreibt Inhalt in den Dateinamen. Dadurch wird der ursprüngliche Inhalt vollständig ersetzt, wenn die Datei bereits vorhanden ist. Gibt eine Ausnahme zurück, wenn nicht in die Datei geschrieben werden kann.

Dateiname = Zeichenfolge; Inhalt = Zeichenfolge

read(filename)

Liest den Inhalt der Datei und gibt ihn zurück, wenn dies möglich ist. Wenn nicht, wird eine Ausnahme zurückgegeben.

Dateiname = Zeichenfolge

isFile(filename)

Boolesch: TRUE, wenn der Dateiname eine Datei ist; FALSE, wenn er keine Datei ist

isDir(filename)

Boolesch: TRUE, wenn der Dateiname ein Verzeichnis ist; FALSE, wenn er kein Verzeichnis ist

Wenn Sie z. B. überprüfen möchten, ob eine Datei mit dem Namen "logfile.txt" vorhanden ist, geben Sie den folgenden Befehl ein:

File.exists(“logfile.txt”);

Eigenschaften der Klasse "File"

Alle Eigenschaften in der Klasse "File" sind schreibgeschützt.

Eigenschaften der Klasse "File"TypBeschreibung

name

ZeichenfolgeName der Datei einschließlich der Erweiterung

path

ZeichenfolgePfad zur Datei

fullName

ZeichenfolgeDer vollständige Name der Datei: Pfad, Name und Erweiterung

baseName

ZeichenfolgeNur der Name der Datei (ohne Pfad oder Erweiterung)

extension

ZeichenfolgeErweiterung des Dateinamens

exists

BooleschTRUE, wenn die Datei bereits vorhandenist; FALSE, wenn Sie nicht vorhanden ist

readable

BooleschTRUE, wenn die Datei gelesen werden kann

writable

BooleschTRUE, wenn in die Datei geschrieben werden kann

executable

BooleschTRUE, wenn die Datei ausgeführt werden kann

hidden

BooleschTRUE, wenn die Datei ausgeblendet ist

eof

BooleschTRUE, wenn beim Lesen der Datei das Ende erreicht wird

created

DatumWann die Datei erstellt wurde

lastModified

DatumWann die Datei zuletzt geändert wurde

lastRead

DatumWann die Datei zuletzt gelesen wurde

size

ZahlGröße der Datei; in Byte

Methoden der Klasse "File"

Methoden der Klasse "File"BeschreibungDatenrückgabe

new File(filename)

Erstellt eine Datei, die auf diesen Dateinamen verweist, Dateiname = ZeichenfolgeNein

open(accessMode)

Öffnet die Datei mit dem Namen accessModeNein

close()

Schließt die DateiNein

readByte()

Liest ein Byte aus der Datei; gibt eine Zahl zurückJa

read()

Gibt den vollständigen Inhalt der Datei als Zeichenfolge zurück. Wenn die Datei nicht gelesen werden kann, wird eine Ausnahme zurückgegeben.Ja

readLine()

Liest eine Zeile aus der Datei aus, wenn möglich; gibt eine Ausnahme zurück, wenn dies nicht möglich ist. Nachgestellte Leerzeichen werden beibehalten.Ja

readLines()

Gibt den Inhalt der Datei als eine Reihe von Zeichenfolgen zurück, eine für jede Zeile; Zeilenumbrüche werden aus Zeichenfolgen entferntJa

writeByte(byte)

Schreibt ein Byte in die DateiNein

write(data, length)

Schreibt die Anzahl der Zeichen aus Daten in die DateiNein

writeLine(data)

Schreibt die Zeile "data" in die Datei und fügt einen Zeilenumbruch hinzu.Nein

copyTo(newName)

Kopiert die aktuelle Datei zu "newName" und gibt TRUE zurück, wenn das Kopieren erfolgreich warJa

Ein Beispiel für diesen Befehl ist vorgegeben:

f = new File(a.path + "/pressure.txt");

f.open(File.WriteOnly | File.Translate);

f.writeLine("Geschwindigkeit, Druck");

f.close();

Es folgt eine detaillierte Beschreibung:

Im Folgenden wird ein Objekt mit dem Namen f erstellt und der Name „pressure.txt“ zugewiesen.

f = new File("pressure.txt");

Dann wird diese Datei geöffnet und zwei AccessMode-Aufzählungen werden verwendet, um anzugeben, dass diese Datei schreibgeschützt ist und in Windows verwendet wird (Translate-Modifikator):

f.open(File.WriteOnly | File.Translate);

Die Wörter „Geschwindigkeit“ und „Druck“ werden in die Datei geschrieben und dort als Spaltentitel verwendet:

f.writeLine("Geschwindigkeit, Druck");

Die Datei wird geschlossen:

f.close();