FileSystem.FileGet Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
Overloads
| Name | Description |
|---|---|
| FileGet(Int32, Array, Int64, Boolean, Boolean) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, String, Int64, Boolean) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, ValueType, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Single, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Int64, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Int32, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Decimal, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Double, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, DateTime, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Char, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Byte, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Boolean, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
| FileGet(Int32, Int16, Int64) |
Leest gegevens uit een geopend schijfbestand in een variabele. De |
FileGet(Int32, Array, Int64, Boolean, Boolean)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Array
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
- ArrayIsDynamic
- Boolean
Optional. Is alleen van toepassing bij het schrijven van een matrix. Hiermee geeft u op of de matrix moet worden behandeld als dynamisch en of een matrixdescriptor de grootte en grenzen van de matrix beschrijft.
- StringIsFixedLength
- Boolean
Optional. Is alleen van toepassing bij het schrijven van een tekenreeks. Hiermee geeft u op of een twee-byte descriptor moet worden geschreven voor de tekenreeks die de lengte beschrijft. De standaardwaarde is False.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, String, Int64, Boolean)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- String
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
- StringIsFixedLength
- Boolean
Optional. Is alleen van toepassing bij het schrijven van een tekenreeks. Hiermee geeft u op of een twee-byte descriptor moet worden geschreven voor de tekenreeks die de lengte beschrijft. De standaardwaarde is False.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, ValueType, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- ValueType
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Single, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Single
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Int64, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Int64
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Int32, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Int32
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Decimal, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Decimal
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Double, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Double
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, DateTime, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- DateTime
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Char, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Char
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Byte, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Byte
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt. Vervolgens bepalen de grootte en grenzen van de matrix die zijn doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Boolean, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Boolean
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic
Van toepassing op
FileGet(Int32, Int16, Int64)
Leest gegevens uit een geopend schijfbestand in een variabele. De My functie biedt u betere productiviteit en prestaties in bestands-I/O-bewerkingen dan FileGet. Zie FileSystem voor meer informatie.
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)
Parameters
- FileNumber
- Int32
Required. Elk geldig bestandsnummer.
- Value
- Int16
Required. Geldige variabelenaam waarin gegevens worden gelezen.
- RecordNumber
- Int64
Optional. Recordnummer (Random modusbestanden) of bytenummer (Binary modusbestanden) waarmee het lezen wordt gestart.
Uitzonderingen
RecordNumber
< 1 en niet gelijk aan -1.
De bestandsmodus is ongeldig.
Opmerkingen
FileGet is alleen geldig in Random en in de Binary modus.
Gegevens gelezen met FileGet worden meestal naar een bestand geschreven met behulp van FilePut.
De eerste record of byte in een bestand bevindt zich op positie 1, de tweede record of byte bevindt zich op positie 2, enzovoort. Als u weglaat RecordNumber, wordt de volgende record of byte na de laatste FileGet of FilePut functie (of waarnaar wordt verwezen door de laatste Seek functie) gelezen.
Important
Wanneer u bestanden leest, moet u geen beslissingen nemen over de inhoud van een bestand op basis van de bestandsnaamextensie. Een bestand met de naam Form1.vb is bijvoorbeeld mogelijk geen Visual Basic bronbestand.
Willekeurige modus
Voor bestanden die in Random de modus worden geopend, zijn de volgende regels van toepassing:
Als de lengte van de gegevens die worden gelezen kleiner is dan de lengte die is opgegeven in de
RecordLengthcomponent van deFileOpenfunctie,FileGetleest u volgende records op recordlengtegrenzen. De ruimte tussen het einde van de ene record en het begin van de volgende record wordt opgevuld met de bestaande inhoud van de bestandsbuffer. Omdat de hoeveelheid opvullingsgegevens met enige zekerheid niet kan worden bepaald, is het over het algemeen een goed idee om de recordlengte overeen te laten komen met de lengte van de gegevens die worden gelezen.Als de variabele die wordt gelezen een tekenreeks is,
FileGetleest u standaard een twee-bytedescriptor die de tekenreekslengte bevat en leest u vervolgens de gegevens die in de variabele worden opgenomen. Daarom moet de recordlengte die is opgegeven door deRecordLengthcomponent van deFileOpenfunctie ten minste twee bytes groter zijn dan de werkelijke lengte van de tekenreeks. Visual Basic 6.0 en eerdere versies ondersteunen tekenreeksen met een vaste lengte. Wanneer u een bestand opgeeft, wordt de lengtedescriptor niet geschreven. Als u een tekenreeks wilt lezen zonder de descriptor, moet u deStringIsFixedLengthparameter doorgevenTrueen moet de tekenreeks die u hebt gelezen, de juiste lengte hebben.Als de variabele die wordt gelezen een matrix is, kunt u kiezen of u een descriptor wilt lezen voor de grootte en dimensie van de matrix. Als u de descriptor wilt schrijven, stelt u de
ArrayIsDynamicparameter in opTrue. Wanneer u de matrix leest, moet u overeenkomen met de manier waarop de matrix is geschreven. Als deze is geschreven met de descriptor, moet u de descriptor lezen. Als de descriptor niet wordt gebruikt, bepalen de grootte en grenzen van de matrix die worden doorgegeven omFileGette bepalen wat moet worden gelezen.De descriptor geeft de rang van de matrix, de grootte en de ondergrenzen voor elke rang aan. De lengte is gelijk aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door de
RecordLengthparameter in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de matrixgegevens en de matrixdescriptor te schrijven. De volgende matrixdeclaratie vereist bijvoorbeeld 218 bytes wanneer de matrix naar de schijf wordt geschreven.Dim MyArray(4, 9) As IntegerDe 218 bytes worden als volgt gedistribueerd:
18 bytes voor de descriptor: (2 + 8 * 2)
200 bytes voor de gegevens: (5 * 10 * 4).
Als de variabele die wordt gelezen een ander type variabele is (geen tekenreeks met een variabelelengte of een object),
FileGetworden alleen de variabelegegevens gelezen. De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de lengte van de gegevens die worden gelezen.FileGetleest elementen van structuren alsof elk afzonderlijk wordt gelezen, behalve dat er geen opvulling tussen elementen is. Op schijf wordt een dynamische matrix in een door de gebruiker gedefinieerd type (geschreven metFilePut) voorafgegaan door een descriptor waarvan de lengte gelijk is aan 2 plus 8 keer het aantal dimensies: (2 + 8 * NumberOfDimensions). De recordlengte die is opgegeven door deRecordLengthcomponent in deFileOpenfunctie, moet groter zijn dan of gelijk zijn aan de som van alle bytes die nodig zijn om de afzonderlijke elementen te lezen. Dit omvat eventuele matrices en descriptors. HetVBFixedStringkenmerk kan worden toegepast op tekenreeksvelden in de structuren om de grootte van een tekenreeks aan te geven wanneer deze naar de schijf wordt geschreven.
Binaire modus
Voor bestanden die in Binary de modus worden geopend, zijn de Random meeste modusregels van toepassing, met enkele uitzonderingen. De volgende regels voor bestanden die in Binary de modus worden geopend, verschillen van de regels voor Random de modus:
De
RecordLengthcomponent in deFileOpenfunctie heeft geen effect.FileGetleest alle variabelen van schijf aaneengesloten; dat wil gezegd, zonder opvulling tussen records.Voor een andere matrix dan een matrix in een structuur worden
FileGetalleen de gegevens gelezen. Er is geen descriptor gelezen.FileGetleest tekenreeksen met de lengte van variabelen die geen elementen van structuren zijn zonder de beschrijving van de lengte van twee bytes te verwachten. Het aantal bytes dat wordt gelezen, is gelijk aan het aantal tekens dat al in de tekenreeks staat.Important
Lezen vanuit een bestand met behulp van de
FileGetfunctie vereistReadtoegang vanuit de FileIOPermissionAccess opsomming.
Zie ook
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Gelezen vanuit bestanden in Visual Basic
- Schrift naar bestanden in Visual Basic