FileSystem.FileGet Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte FileSystem.
Sobrecargas
| Nombre | Description |
|---|---|
| FileGet(Int32, Array, Int64, Boolean, Boolean) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, String, Int64, Boolean) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, ValueType, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Single, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Int64, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Int32, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Decimal, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Double, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, DateTime, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Char, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Byte, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Boolean, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
| FileGet(Int32, Int16, Int64) |
Lee los datos de un archivo de disco abierto en una variable. La |
FileGet(Int32, Array, Int64, Boolean, Boolean)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Array
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
- ArrayIsDynamic
- Boolean
Optional. Solo se aplica al escribir una matriz. Especifica si la matriz se va a tratar como dinámica y si es necesario un descriptor de matriz que describa el tamaño y los límites de la matriz.
- StringIsFixedLength
- Boolean
Optional. Solo se aplica al escribir una cadena. Especifica si se va a escribir un descriptor de dos bytes para la cadena que describe la longitud. El valor predeterminado es False.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, String, Int64, Boolean)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- String
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
- StringIsFixedLength
- Boolean
Optional. Solo se aplica al escribir una cadena. Especifica si se va a escribir un descriptor de dos bytes para la cadena que describe la longitud. El valor predeterminado es False.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, ValueType, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- ValueType
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Single, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Single
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Int64, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Int64
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Int32, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Int32
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Decimal, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Decimal
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Double, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Double
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, DateTime, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- DateTime
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo con FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Char, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Char
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo con FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Byte, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Byte
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo con FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor. A continuación, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Boolean, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Boolean
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo con FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic
Se aplica a
FileGet(Int32, Int16, Int64)
Lee los datos de un archivo de disco abierto en una variable. La My característica proporciona una mayor productividad y rendimiento en las operaciones de E/S de archivos que FileGet. Para obtener más información, consulte 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)
Parámetros
- FileNumber
- Int32
Required. Cualquier número de archivo válido.
- Value
- Int16
Required. Nombre de variable válido en el que se leen los datos.
- RecordNumber
- Int64
Optional. Número de registro (Random archivos de modo) o número de bytes (Binary archivos de modo) en el que se inicia la lectura.
Excepciones
RecordNumber
< 1 y no es igual a -1.
El modo de archivo no es válido.
Comentarios
FileGet solo es válido en Random modo y Binary .
Los datos leídos con FileGet normalmente se escriben en un archivo mediante FilePut.
El primer registro o byte de un archivo se encuentra en la posición 1, el segundo registro o byte se encuentra en la posición 2, etc. Si omite RecordNumber, se lee el siguiente registro o byte después de la última FileGet o FilePut función (o a la que apunta la última Seek función).
Importante
Al leer archivos, no tome decisiones sobre el contenido de un archivo basado en la extensión de nombre de archivo. Por ejemplo, es posible que un archivo denominado Form1.vb no sea un archivo de origen Visual Basic.
Modo aleatorio
En el caso de los archivos abiertos en Random modo, se aplican las reglas siguientes:
Si la longitud de los datos que se leen es menor que la longitud especificada en la
RecordLengthcláusula de laFileOpenfunción,FileGetlee los registros posteriores en los límites de longitud del registro. El espacio entre el final de un registro y el inicio del siguiente registro se rellena con el contenido existente del búfer de archivos. Dado que la cantidad de datos de relleno no se puede determinar con certeza, por lo general es una buena idea que la longitud del registro coincida con la longitud de los datos que se leen.De forma predeterminada, si la variable en la que se lee es una cadena, lee un descriptor de dos bytes que contiene la longitud de la cadena y, a continuación,
FileGetlee los datos que entran en la variable. Por lo tanto, la longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser al menos dos bytes mayores que la longitud real de la cadena. Visual Basic 6.0 y versiones anteriores admiten cadenas de longitud fija; cuando se coloca en un archivo, el descriptor de longitud no se escribe. Si desea leer una cadena sin el descriptor, debe pasarTruealStringIsFixedLengthparámetro y la cadena en la que lee debe ser la longitud correcta.Si la variable en la que se lee es una matriz, puede elegir si desea leer un descriptor para el tamaño y la dimensión de la matriz. Para escribir el descriptor, establezca el
ArrayIsDynamicparámetroTrueen . Al leer la matriz, debe coincidir con la forma en que se escribió la matriz. Si se escribió con el descriptor, debe leer el descriptor. Si no se usa el descriptor, el tamaño y los límites de la matriz pasados aFileGetdeterminar lo que se va a leer.El descriptor especifica el rango de la matriz, el tamaño y los límites inferiores para cada clasificación. Su longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por el
RecordLengthparámetro de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para escribir los datos de la matriz y el descriptor de matriz. Por ejemplo, la siguiente declaración de matriz requiere 218 bytes cuando la matriz se escribe en el disco.Dim MyArray(4, 9) As IntegerLos 218 bytes se distribuyen de la siguiente manera:
18 bytes para el descriptor: (2 + 8 * 2)
200 bytes para los datos: (5 * 10 * 4).
Si la variable en la que se lee es cualquier otro tipo de variable (no una cadena de longitud variable o un objeto),
FileGetsolo lee los datos de la variable. La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la longitud de los datos que se van a leer.FileGetlee elementos de estructuras como si cada uno se leyesen individualmente, excepto que no hay relleno entre elementos. En el disco, una matriz dinámica de un tipo definido por el usuario (escrito conFilePut) tiene como prefijo un descriptor cuya longitud es igual a 2 más 8 veces el número de dimensiones: (2 + 8 * NumberOfDimensions). La longitud del registro especificada por laRecordLengthcláusula de laFileOpenfunción debe ser mayor o igual que la suma de todos los bytes necesarios para leer los elementos individuales. Esto incluye todas las matrices y sus descriptores. ElVBFixedStringatributo se puede aplicar a los campos de cadena de las estructuras para indicar el tamaño de una cadena cuando se escribe en el disco.
Modo binario
En el caso de los archivos abiertos en Binary modo, se aplican la mayoría de las Random reglas de modo, con algunas excepciones. Las reglas siguientes para los archivos abiertos en Binary modo difieren de las reglas para Random el modo:
La
RecordLengthcláusula de laFileOpenfunción no tiene ningún efecto.FileGetlee todas las variables del disco de forma contigua; es decir, sin relleno entre registros.Para cualquier matriz distinta de una matriz de una estructura,
FileGetsolo lee los datos. No se lee el descriptor.FileGetlee cadenas de longitud variable que no son elementos de estructuras sin esperar el descriptor de longitud de dos bytes. El número de bytes leídos es igual al número de caracteres que ya se encuentra en la cadena.Importante
La lectura desde un archivo mediante la
FileGetfunción requiereReadacceso desde la FileIOPermissionAccess enumeración.
Consulte también
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Reading from Files in Visual Basic
- Writing to Files in Visual Basic