OPEN (Anweisung)

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » O » OPEN (Anweisung)

Syntax:

OPEN Datei FOR Dateimodus [ACCESS Zugriffsart] [LOCK Sperrart] _
     [ENCODING "Format"] AS [#]Dateinummer [LEN = Recordlänge]


Typ: Anweisung
Kategorie: Datei

Anmerkung zur Syntax: Unterstriche (_) am Zeilenende werden von FreeBASIC so interpretiert, als wäre die Zeile nicht unterbrochen; dies dient nur der besseren Übersichtlichkeit und hat letztenendes keine Auswirkungen auf die Programmausführung.

OPEN bereitet eine Datei auf einen Lese- und/oder Schreibzugriff vor und weist der Datei eine Dateinummer zu. OPEN kann auch zum Zugriff auf verschiedene Geräte verwendet werden; siehe die OPEN-Varianten am Ende dieses Eintrags.

OPEN kann auch als Funktion eingesetzt werden. In diesem Fall müssen die übergebenen Parameter von Klammern umschlossen werden. Der Rückgabewert ist ggf. eine Fehlernummer. Wird 0 zurückgeliefert, konnte die Datei geöffnet werden.

Beispiel 1:
Öffnen der UTF-8-Datei "file.ext" im aktuellen Arbeitsverzeichnis und Ausgabe ihrer ersten Zeile auf dem Bildschirm

Dim Zeile As String, DNr As Integer = FREEFILE
OPEN "file.ext" FOR INPUT ENCODING "UTF-8" AS #DNr
  LINE INPUT #DNr, Zeile
  PRINT Zeile
CLOSE #DNr



Beispiel 2:
Dasselbe Beispiel wie oben, mit Einsatz von OPEN als Funktion:

Dim Zeile As String, DNr As Integer = FREEFILE
IF OPEN("file.ext" FOR INPUT ENCODING "UTF-8" AS #DNr) = 0 THEN
  LINE INPUT #DNr, Zeile
  PRINT Zeile
  CLOSE #DNr
END IF



Zugriff auf Geräte (gültig für FreeBASIC ab v0.15b)
Neben Dateien lassen sich auch 'Geräte' öffnen. Geräte sind entweder von FreeBASIC verwaltete Speicherbereiche, in denen verschiedene, interne Informationen gespeichert werden, oder externe Anschlüsse wie die COM-Ports oder der LTP-Druckerport. Um mit OPEN ein Gerät zu öffnen, wird einfach einer dieser Bezeichner bei 'Gerät' angegeben. (Anmerkung: Diese Syntax-Regeln sind erst ab FreeBASIC v0.15b gültig.)
Beispiel: LPT: Dieses Gerät ermöglicht die Kommunikation mit dem LPT-Port und dadurch mit dem Drucker.
Weitere Informationen zum Thema finden sich bei den Spezialseiten zum Thema:

Unterschiede zu QB:

Plattformbedingte Unterschiede:

Unterschiede zu früheren Versionen von FreeBASIC:
Der Zugriff auf Geräte mittels OPEN COM usw. (s. o.) existiert seit FreeBASIC v0.15

Unterschiede unter den FB-Dialektformen:
Die Dialektform -lang qb unterstützt auch den alte GW-BASIC-Syntax

OPEN Dateimodus, [#]Dateinummer, Dateiname [, Länge]

mit dem Dateimodus "I" für Input, "O" für Output, "A" für Append, "R" für Random und "B" für Binary.

Siehe auch:
OPEN (Funktion), OPEN CONS, OPEN ERR, OPEN LPT, LPRINT (Anweisung), FREEFILE, INPUT (Dateimodus), OUTPUT, APPEND, BINARY, CLOSE, Dateien (Files), ENCODING