FileSystem.FileGet Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez FileSystem.
Surcharges
FileGet(Int32, Array, Int64, Boolean, Boolean) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, String, Int64, Boolean) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, ValueType, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Single, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Int64, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Int32, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Decimal, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Double, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, DateTime, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Char, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Byte, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Boolean, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Int16, Int64) |
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité |
FileGet(Int32, Array, Int64, Boolean, Boolean)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Array
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
- ArrayIsDynamic
- Boolean
Optionnel. S'applique uniquement lors de l'écriture d'un tableau. Spécifie si le tableau sera traité comme dynamique et si un descripteur de tableau décrivant la taille et les limites du tableau est nécessaire.
- StringIsFixedLength
- Boolean
Optionnel. S'applique uniquement lors de l'écriture d'une chaîne. Spécifie s'il est nécessaire d'écrire un descripteur à deux octets pour la chaîne décrivant la longueur. La valeur par défaut est False
.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite unRead
accès à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, String, Int64, Boolean)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- String
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
- StringIsFixedLength
- Boolean
Optionnel. S'applique uniquement lors de l'écriture d'une chaîne. Spécifie s'il est nécessaire d'écrire un descripteur à deux octets pour la chaîne décrivant la longueur. La valeur par défaut est False
.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, ValueType, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- ValueType
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Single, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Single
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite unRead
accès à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Int64, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Int64
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite unRead
accès à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Int32, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Int32
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite unRead
accès à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Decimal, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Decimal
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Double, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Double
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, DateTime, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- DateTime
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier avec FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Char, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Char
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier avec FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Byte, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Byte
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier avec FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé. Ensuite, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Boolean, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Boolean
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier avec FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet se trouve à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données en cours de lecture est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est complété avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui entrent dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre, et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau transmis déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique d’un type défini par l’utilisateur (écrit avecFilePut
) est précédé d’un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets nécessaires pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lorsqu’elle est écrite sur disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles pour Random
le mode :
La
RecordLength
clause de laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque de manière contiguë ; c’est-à-dire sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite l’accèsRead
à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic
S’applique à
FileGet(Int32, Int16, Int64)
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
- Source:
- FileSystem.vb
Lit les données d’un fichier disque ouvert dans une variable. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à FileGet
. Pour plus d'informations, consultez 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)
Paramètres
- FileNumber
- Int32
Obligatoire. N’importe quel numéro de fichier valide.
- Value
- Int16
Obligatoire. Nom de la variable valide dans laquelle les données sont lues.
- RecordNumber
- Int64
Optionnel. Numéro d'enregistrement (fichiers en mode Random
) ou numéro d’octet (fichiers en mode Binary
) auquel la lecture débute.
Exceptions
RecordNumber
< 1 et différent de -1.
Le mode de fichier n’est pas valide.
Remarques
FileGet
est valide uniquement en Random
mode et Binary
.
Les données lues avec FileGet
sont généralement écrites dans un fichier à l’aide de FilePut
.
Le premier enregistrement ou octet d’un fichier se trouve à la position 1, le deuxième enregistrement ou octet est à la position 2, et ainsi de suite. Si vous omettez RecordNumber
, l’enregistrement ou l’octet suivant la dernière FileGet
fonction ou FilePut
(ou pointé par la dernière Seek
fonction) est lu.
Important
Lors de la lecture à partir de fichiers, ne prenez pas de décisions concernant le contenu d’un fichier en fonction de l’extension de nom de fichier. Par exemple, un fichier nommé Form1.vb peut ne pas être un fichier source Visual Basic.
Mode aléatoire
Pour les fichiers ouverts en Random
mode, les règles suivantes s’appliquent :
Si la longueur des données lues est inférieure à la longueur spécifiée dans la
RecordLength
clause de laFileOpen
fonction,FileGet
lit les enregistrements suivants sur les limites de longueur d’enregistrement. L’espace entre la fin d’un enregistrement et le début de l’enregistrement suivant est rempli avec le contenu existant de la mémoire tampon de fichier. Étant donné que la quantité de données de remplissage ne peut pas être déterminée avec certitude, il est généralement judicieux de faire en sorte que la longueur de l’enregistrement corresponde à la longueur des données lues.Par défaut, si la variable en cours de lecture est une chaîne,
FileGet
lit un descripteur de deux octets qui contient la longueur de chaîne, puis lit les données qui vont dans la variable. Par conséquent, la longueur d’enregistrement spécifiée par laRecordLength
clause de laFileOpen
fonction doit être supérieure d’au moins deux octets à la longueur réelle de la chaîne. Visual Basic 6.0 et versions antérieures prennent en charge les chaînes de longueur fixe ; lorsqu’il est placé dans un fichier, le descripteur de longueur n’est pas écrit. Si vous souhaitez lire une chaîne sans le descripteur, vous devez passerTrue
auStringIsFixedLength
paramètre , et la chaîne que vous lisez doit avoir la longueur correcte.Si la variable en cours de lecture est un tableau, vous pouvez choisir de lire un descripteur pour la taille et la dimension du tableau. Pour écrire le descripteur, définissez le paramètre sur
ArrayIsDynamic
True
. Lors de la lecture du tableau, vous devez correspondre à la façon dont le tableau a été écrit. S’il a été écrit avec le descripteur, vous devez lire le descripteur. Si le descripteur n’est pas utilisé, la taille et les limites du tableau passées déterminentFileGet
ce qu’il faut lire.Le descripteur spécifie le rang du tableau, la taille et les limites inférieures pour chaque classement. Sa longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par le
RecordLength
paramètre dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour écrire les données du tableau et le descripteur de tableau. Par exemple, la déclaration de tableau suivante nécessite 218 octets lorsque le tableau est écrit sur le disque.Dim MyArray(4, 9) As Integer
Les 218 octets sont distribués comme suit :
18 octets pour le descripteur : (2 + 8 * 2)
200 octets pour les données : (5 * 10 * 4).
Si la variable en cours de lecture est un autre type de variable (pas une chaîne de longueur variable ou un objet),
FileGet
lit uniquement les données de la variable. La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la longueur des données lues.FileGet
lit les éléments de structures comme si chacun d’eux était lu individuellement, sauf qu’il n’y a pas de remplissage entre les éléments. Sur le disque, un tableau dynamique dans un type défini par l’utilisateur (écrit avecFilePut
) est préfixé par un descripteur dont la longueur est égale à 2 plus 8 fois le nombre de dimensions : (2 + 8 * NumberOfDimensions). La longueur d’enregistrement spécifiée par laRecordLength
clause dans laFileOpen
fonction doit être supérieure ou égale à la somme de tous les octets requis pour lire les éléments individuels. Cela inclut tous les tableaux et leurs descripteurs. L’attributVBFixedString
peut être appliqué aux champs de chaîne dans les structures pour indiquer la taille d’une chaîne lors de l’écriture sur le disque.
Mode binaire
Pour les fichiers ouverts en Binary
mode, la Random
plupart des règles de mode s’appliquent, à quelques exceptions près. Les règles suivantes pour les fichiers ouverts en Binary
mode diffèrent des règles du Random
mode :
La
RecordLength
clause dans laFileOpen
fonction n’a aucun effet.FileGet
lit toutes les variables du disque contiguëment ; autrement dit, sans remplissage entre les enregistrements.Pour tout tableau autre qu’un tableau dans une structure,
FileGet
lit uniquement les données. Aucun descripteur n’est lu.FileGet
lit des chaînes de longueur variable qui ne sont pas des éléments de structures sans attendre le descripteur de longueur de deux octets. Le nombre d’octets lus est égal au nombre de caractères déjà présents dans la chaîne.Important
La lecture à partir d’un fichier à l’aide de la
FileGet
fonction nécessite unRead
accès à partir de l’énumération FileIOPermissionAccess .
Voir aussi
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Lecture à partir de fichiers en Visual Basic
- Écriture dans des fichiers en Visual Basic