FileSystem.FileGet Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
Überlädt
FileGet(Int32, Array, Int64, Boolean, Boolean) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, String, Int64, Boolean) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, ValueType, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Single, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Int64, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Int32, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Decimal, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Double, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, DateTime, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Char, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Byte, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Boolean, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Int16, Int64) |
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das |
FileGet(Int32, Array, Int64, Boolean, Boolean)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref Array Value, long RecordNumber = -1, bool ArrayIsDynamic = false, bool StringIsFixedLength = false);
static member FileGet : int * Array * int64 * bool * bool -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Array, Optional RecordNumber As Long = -1, Optional ArrayIsDynamic As Boolean = false, Optional StringIsFixedLength As Boolean = false)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Array
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
- ArrayIsDynamic
- Boolean
Dies ist optional. Betrifft nur das Schreiben eines Arrays. Gibt an, ob das Array als dynamisches Array behandelt werden soll und ein Arraydeskriptor erforderlich ist, der die Größe und die Begrenzungen des Arrays beschreibt.
- StringIsFixedLength
- Boolean
Dies ist optional. Betrifft nur das Schreiben einer Zeichenfolge. Gibt an, ob ein 2-Byte-Deskriptor für die Zeichenfolge geschrieben werden soll, der die Länge beschreibt. Der Standardwert ist False
.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, String, Int64, Boolean)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref string Value, long RecordNumber = -1, bool StringIsFixedLength = false);
static member FileGet : int * string * int64 * bool -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As String, Optional RecordNumber As Long = -1, Optional StringIsFixedLength As Boolean = false)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- String
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
- StringIsFixedLength
- Boolean
Dies ist optional. Betrifft nur das Schreiben einer Zeichenfolge. Gibt an, ob ein 2-Byte-Deskriptor für die Zeichenfolge geschrieben werden soll, der die Länge beschreibt. Der Standardwert ist False
.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, ValueType, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref ValueType Value, long RecordNumber = -1);
static member FileGet : int * ValueType * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As ValueType, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- ValueType
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden in der Regel mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
- oder FilePut
-Funktion (oder auf die die letzte Seek
Funktion verweist) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für Dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
liest nachfolgende Datensätze an den Grenzen der Datensatzlänge. Der Abstand zwischen dem Ende eines Datensatzes und dem Anfang des nächsten Datensatzes wird mit dem vorhandenen Inhalt des Dateipuffers aufgefüllt. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable eingehen. Daher muss die von derRecordLength
-Klausel derFileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. wenn sie in eine Datei eingefügt wird, wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie lesen, sollte die richtige Länge aufweisen.Wenn die Variable, in die gelesen wird, ein Array ist, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie mit der Art und Weise übereinstimmen, wie das Array geschrieben wurde. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des arrays, an das übergeben wirdFileGet
, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die unteren Grenzen für jeden Rang an. Seine Länge entspricht 2 plus dem 8-fachen der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die vom Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für den Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der variablen, in die gelesen wird, um einen anderen Typ von Variablen (keine Zeichenfolge mit variabler Länge oder ein Objekt) handelt,
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keinen Abstand zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 Mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die von derRecordLength
-Klausel in derFileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und deren Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge beim Schreiben auf den Datenträger anzugeben.
Binärer Modus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Single, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref float Value, long RecordNumber = -1);
static member FileGet : int * single * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Single, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Single
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden in der Regel mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
- oder FilePut
-Funktion (oder auf die die letzte Seek
Funktion verweist) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für Dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
liest nachfolgende Datensätze an den Grenzen der Datensatzlänge. Der Abstand zwischen dem Ende eines Datensatzes und dem Anfang des nächsten Datensatzes wird mit dem vorhandenen Inhalt des Dateipuffers aufgefüllt. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable eingehen. Daher muss die von derRecordLength
-Klausel derFileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. wenn sie in eine Datei eingefügt wird, wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie lesen, sollte die richtige Länge aufweisen.Wenn die Variable, in die gelesen wird, ein Array ist, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie mit der Art und Weise übereinstimmen, wie das Array geschrieben wurde. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des arrays, an das übergeben wirdFileGet
, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die unteren Grenzen für jeden Rang an. Seine Länge entspricht 2 plus dem 8-fachen der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die vom Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für den Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der variablen, in die gelesen wird, um einen anderen Typ von Variablen (keine Zeichenfolge mit variabler Länge oder ein Objekt) handelt,
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keinen Abstand zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 Mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die von derRecordLength
-Klausel in derFileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und deren Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge beim Schreiben auf den Datenträger anzugeben.
Binärer Modus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Int64, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref long Value, long RecordNumber = -1);
static member FileGet : int * int64 * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Long, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Int64
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden in der Regel mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
- oder FilePut
-Funktion (oder auf die die letzte Seek
Funktion verweist) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für Dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
liest nachfolgende Datensätze an den Grenzen der Datensatzlänge. Der Abstand zwischen dem Ende eines Datensatzes und dem Anfang des nächsten Datensatzes wird mit dem vorhandenen Inhalt des Dateipuffers aufgefüllt. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable eingehen. Daher muss die von derRecordLength
-Klausel derFileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. wenn sie in eine Datei eingefügt wird, wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie lesen, sollte die richtige Länge aufweisen.Wenn die Variable, in die gelesen wird, ein Array ist, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie mit der Art und Weise übereinstimmen, wie das Array geschrieben wurde. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des arrays, an das übergeben wirdFileGet
, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die unteren Grenzen für jeden Rang an. Seine Länge entspricht 2 plus dem 8-fachen der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die vom Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für den Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der variablen, in die gelesen wird, um einen anderen Typ von Variablen (keine Zeichenfolge mit variabler Länge oder ein Objekt) handelt,
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keinen Abstand zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 Mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die von derRecordLength
-Klausel in derFileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und deren Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge beim Schreiben auf den Datenträger anzugeben.
Binärer Modus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Int32, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref int Value, long RecordNumber = -1);
static member FileGet : int * int * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Integer, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Int32
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Decimal, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref decimal Value, long RecordNumber = -1);
static member FileGet : int * decimal * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Decimal, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Decimal
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Double, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref double Value, long RecordNumber = -1);
static member FileGet : int * double * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Double, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Double
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, DateTime, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref DateTime Value, long RecordNumber = -1);
static member FileGet : int * DateTime * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As DateTime, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- DateTime
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mit FilePut
in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für den Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der variablen, in die gelesen wird, um einen anderen Typ von Variablen (keine Zeichenfolge mit variabler Länge oder ein Objekt) handelt,
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keinen Abstand zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 Mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die von derRecordLength
-Klausel in derFileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und deren Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge beim Schreiben auf den Datenträger anzugeben.
Binärer Modus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Char, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref char Value, long RecordNumber = -1);
static member FileGet : int * char * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Char, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Char
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden in der Regel mit in eine Datei mit FilePut
geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
- oder FilePut
-Funktion (oder auf die die letzte Seek
Funktion verweist) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für Dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
liest nachfolgende Datensätze an den Grenzen der Datensatzlänge. Der Abstand zwischen dem Ende eines Datensatzes und dem Anfang des nächsten Datensatzes wird mit dem vorhandenen Inhalt des Dateipuffers aufgefüllt. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable eingehen. Daher muss die von derRecordLength
-Klausel derFileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. wenn sie in eine Datei eingefügt wird, wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie lesen, sollte die richtige Länge aufweisen.Wenn die Variable, in die gelesen wird, ein Array ist, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie mit der Art und Weise übereinstimmen, wie das Array geschrieben wurde. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des arrays, an das übergeben wirdFileGet
, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die unteren Grenzen für jeden Rang an. Seine Länge entspricht 2 plus dem 8-fachen der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die vom Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für den Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der variablen, in die gelesen wird, um einen anderen Typ von Variablen (keine Zeichenfolge mit variabler Länge oder ein Objekt) handelt,
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keinen Abstand zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 Mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die von derRecordLength
-Klausel in derFileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und deren Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge beim Schreiben auf den Datenträger anzugeben.
Binärer Modus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
Funktion hat keine Auswirkung.FileGet
liest alle Variablen zusammenhängend vom Datenträger; d. h. ohne Abstand zwischen Datensätzen.Für jedes Array außer einem Array in einer -Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Zwei-Byte-Längendeskriptor zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl der Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
zugriff von der FileIOPermissionAccess -Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Byte, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref byte Value, long RecordNumber = -1);
static member FileGet : int * byte * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Byte, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Byte
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden in der Regel mit in eine Datei mit FilePut
geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
- oder FilePut
-Funktion (oder auf die die letzte Seek
Funktion verweist) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird. Dann bestimmen die Größe und Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Boolean, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref bool Value, long RecordNumber = -1);
static member FileGet : int * bool * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Boolean, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Boolean
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mit FilePut
in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic
Gilt für:
FileGet(Int32, Int16, Int64)
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
- Quelle:
- FileSystem.vb
Liest Daten aus einer offenen Datenträgerdatei in eine Variable. Das My
-Feature bietet höhere Produktivität und Leistung bei Datei-E/A-Vorgängen als FileGet
. Weitere Informationen finden Sie unter FileSystem.
public static void FileGet (int FileNumber, ref short Value, long RecordNumber = -1);
static member FileGet : int * int16 * int64 -> unit
Public Sub FileGet (FileNumber As Integer, ByRef Value As Short, Optional RecordNumber As Long = -1)
Parameter
- FileNumber
- Int32
Erforderlich. Eine beliebige gültige Dateinummer.
- Value
- Int16
Erforderlich. Der gültige Name einer Variablen, in die Daten gelesen werden.
- RecordNumber
- Int64
Dies ist optional. Datensatznummer (Dateien im Random
-Modus) oder Bytenummer (Dateien im Binary
-Modus), bei der der Lesevorgang beginnt.
Ausnahmen
RecordNumber
< 1 und ungleich –1.
Dateimodus ist ungültig.
Hinweise
FileGet
ist nur im Random
- und Binary
-Modus gültig.
Daten, die mit FileGet
gelesen werden, werden normalerweise mithilfe FilePut
von in eine Datei geschrieben.
Der erste Datensatz oder das erste Byte in einer Datei befindet sich an Position 1, der zweite Datensatz oder das zweite Byte an Position 2 usw. Wenn Sie weglassen RecordNumber
, wird der nächste Datensatz oder das nächste Byte nach der letzten FileGet
Funktion oder FilePut
Funktion (oder auf die letzte Seek
Funktion verwiesen) gelesen.
Wichtig
Treffen Sie beim Lesen aus Dateien keine Entscheidungen über den Inhalt einer Datei basierend auf der Dateinamenerweiterung. Beispielsweise ist eine Datei mit dem Namen Form1.vb möglicherweise keine Visual Basic-Quelldatei.
Zufälliger Modus
Für dateien, die im Random
Modus geöffnet werden, gelten die folgenden Regeln:
Wenn die Länge der zu lesenden Daten kleiner als die in der
RecordLength
-Klausel derFileOpen
-Funktion angegebene Länge ist,FileGet
werden nachfolgende Datensätze an Datensatzlängengrenzen gelesen. Der Leerraum zwischen dem Ende eines Datensatzes und dem Beginn des nächsten Datensatzes ist mit dem vorhandenen Inhalt des Dateipuffers gepolstert. Da die Menge der Auffüllungsdaten nicht mit Sicherheit bestimmt werden kann, empfiehlt es sich im Allgemeinen, die Datensatzlänge mit der Länge der gelesenen Daten übereinzustimmen.Wenn die Variable, in die gelesen wird, eine Zeichenfolge ist,
FileGet
liest standardmäßig einen Zwei-Byte-Deskriptor, der die Zeichenfolgenlänge enthält, und liest dann die Daten, die in die Variable gehen. Daher muss die von der -Klausel derRecordLength
FileOpen
-Funktion angegebene Datensatzlänge mindestens zwei Bytes größer als die tatsächliche Länge der Zeichenfolge sein. Visual Basic 6.0 und frühere Versionen unterstützen Zeichenfolgen mit fester Länge. beim Ablegen in eine Datei wird der Längendeskriptor nicht geschrieben. Wenn Sie eine Zeichenfolge ohne den Deskriptor lesen möchten, sollten Sie an den Parameter übergebenTrue
, und die Zeichenfolge, in dieStringIsFixedLength
Sie einlesen, sollte die richtige Länge aufweisen.Wenn es sich bei der Variablen, in die eingelesen wird, um ein Array handelt, können Sie auswählen, ob ein Deskriptor für die Größe und Dimension des Arrays gelesen werden soll. Um den Deskriptor zu schreiben, legen Sie den
ArrayIsDynamic
Parameter auf festTrue
. Beim Lesen des Arrays müssen Sie der Schreibweise des Arrays entsprechen. Wenn es mit dem Deskriptor geschrieben wurde, müssen Sie den Deskriptor lesen. Wenn der Deskriptor nicht verwendet wird, bestimmen die Größe und die Grenzen des übergebenenFileGet
Arrays, was gelesen werden soll.Der Deskriptor gibt den Rang des Arrays, die Größe und die Untergrenze für jeden Rang an. Seine Länge entspricht 2 plus 8 Mal der Anzahl der Dimensionen: (2 + 8 * NumberOfDimensions). Die durch den Parameter in der
RecordLength
FileOpen
Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Schreiben der Arraydaten und des Arraydeskriptors erforderlich sind. Die folgende Arraydeklaration erfordert beispielsweise 218 Bytes, wenn das Array auf den Datenträger geschrieben wird.Dim MyArray(4, 9) As Integer
Die 218 Bytes werden wie folgt verteilt:
18 Bytes für die Deskriptor: (2 + 8 * 2)
200 Bytes für die Daten: (5 * 10 * 4).
Wenn es sich bei der eingelesenen Variable um einen anderen Variablentyp handelt (keine Zeichenfolge mit variabler Länge oder ein Objekt),
FileGet
werden nur die Variablendaten gelesen. Die von derRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Länge der gelesenen Daten sein.FileGet
liest Elemente von Strukturen so, als ob sie einzeln gelesen würden, mit der Ausnahme, dass es keine Auffüllung zwischen Elementen gibt. Auf dem Datenträger wird einem dynamischen Array in einem benutzerdefinierten Typ (geschrieben mitFilePut
) ein Deskriptor vorangestellt, dessen Länge 2 plus 8 mal der Anzahl der Dimensionen entspricht: (2 + 8 * NumberOfDimensions). Die durch dieRecordLength
-Klausel in derFileOpen
-Funktion angegebene Datensatzlänge muss größer oder gleich der Summe aller Bytes sein, die zum Lesen der einzelnen Elemente erforderlich sind. Dies schließt alle Arrays und ihre Deskriptoren ein. DasVBFixedString
Attribut kann auf Zeichenfolgenfelder in den Strukturen angewendet werden, um die Größe einer Zeichenfolge anzugeben, wenn sie auf den Datenträger geschrieben wird.
Binärmodus
Für Dateien, die im Binary
Modus geöffnet werden, gelten die Random
meisten Modusregeln, mit einigen Ausnahmen. Die folgenden Regeln für dateien, die im Binary
Modus geöffnet werden, unterscheiden sich von den Regeln für Random
den Modus:
Die
RecordLength
-Klausel in derFileOpen
-Funktion hat keine Auswirkung.FileGet
liest alle Variablen von datenträgerkontinuierlichen; d. h. ohne Auffüllung zwischen Datensätzen.Bei einem anderen Array als einem Array in einer Struktur
FileGet
werden nur die Daten gelesen. Es wird kein Deskriptor gelesen.FileGet
liest Zeichenfolgen mit variabler Länge, die keine Elemente von Strukturen sind, ohne den Deskriptor für die Länge von zwei Byte zu erwarten. Die Anzahl der gelesenen Bytes entspricht der Anzahl von Zeichen, die bereits in der Zeichenfolge enthalten sind.Wichtig
Das Lesen aus einer Datei mithilfe der
FileGet
-Funktion erfordertRead
Zugriff von der FileIOPermissionAccess Enumeration.
Weitere Informationen
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lesen aus Dateien in Visual Basic
- Schreiben in Dateien in Visual Basic