Start / FAQ / FAQ 0003: Wie kann ich aus einer Datei lesen und in eine Datei schreiben?
 
Startseite Up-/Download Tutorials Club Das Team
Rubriken Foren Bücher Tips 'n Tricks Suche


FAQ 0003: Wie kann ich aus einer Datei lesen und in eine Datei schreiben?


  Frage

Wie kann ich aus einer Datei lesen?

Wie kann ich in eine Datei schreiben?

Wie kann ich eine leere Datei anlegen?

Wie kann ich die letzten X Byte einer Datei löschen?

Inhalt

Datei lesen und schreiben
Die letzten x Byte einer Datei löschen
An das Ende einer Datei schreiben

  Datei lesen und schreiben

Dazu gibt es ein paar Tutorials, welche unbedingt gelesen werden sollten:

Wenn eine Datei zum Beschreiben geöffnet wird, wird sie angelegt, wenn sie nicht existiert. Wird eine leere Datei benötigt, öffnet man diese Datei einfach zum Schreiben und schließt sie wieder, ohne etwas in die Datei zu schreiben.

  Die letzten x Byte einer Datei löschen

Mit reinen VB-Bordmitteln geht es nicht, hier muß man die Datei komplett einlesen, den Lesepuffer um die gewünschte Länge reduzieren und die Datei wieder schreiben.
Allerdings gibt es noch die Funktion SetEndOfFile des Windows-API. Diese kann das Ende einer Datei auf die aktuelle Lese- oder Schreibposition festlegen. Die Datei wird dazu mit CreateFile geöffnet, mit SetFilePointer an die gewünschte Position gesprungen und dann mit SetEndOfFile das Ende der Datei markiert. Mit CloseHandle wird die Datei dann wieder geschlossen.

  An das Ende einer Datei schreiben

Möchte man Daten an eine Datei anhängen, muß man die Datei im Append-Modus öffnen.
Im Fall von binär geöffneten Dateien geht dies jedoch nicht, da muß man die Datensätzposition angeben:

'   Angenommen, die Kanalnummer steht in FNr:
Put #Fnr, LOF(FNr) + 1, App.ExeName

Listing 1: Daten ans Ende einer binär geöffneten Datei schreiben


Erstellt: 04.03.2003
Aktualisierung: 26.07.2010
  Autor: Helge Rex
E-Mail: faq@ActiveVB.de



Copyright © 1998-2010 by ActiveVB
Alle Rechte vorbehalten.