FileSystem.FileGet Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. FileSystem.
Перегрузки
FileGet(Int32, Array, Int64, Boolean, Boolean) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, String, Int64, Boolean) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, ValueType, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Single, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Int64, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Int32, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Decimal, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Double, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, DateTime, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Char, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Byte, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Boolean, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Int16, Int64) |
Считывает данные из файла открытия диска в переменную. Функция |
FileGet(Int32, Array, Int64, Boolean, Boolean)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Array
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
- ArrayIsDynamic
- Boolean
Необязательный элемент. Применяется только при записи массива. Указывает, нужно ли обрабатывать массив как динамический, и обязательно ли записывать дескриптор массива, описывающий его длину и границы.
- StringIsFixedLength
- Boolean
Необязательный элемент. Используется только при записи строки. Указывает, записывать ли двухбайтовый дескриптор длины строки. Значение по умолчанию — False
.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым файлового буфера. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, String, Int64, Boolean)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- String
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
- StringIsFixedLength
- Boolean
Необязательный элемент. Используется только при записи строки. Указывает, записывать ли двухбайтовый дескриптор длины строки. Значение по умолчанию — False
.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, ValueType, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- ValueType
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Single, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Single
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого в ,FileGet
определяют, что следует считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если переменная, считываемая в, является любым другим типом переменной (не строкой переменной длины или объектом),
FileGet
считывает только данные переменной. Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждая из них считывалась по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз количеству измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят все массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяется большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме , отличаются от правил режима Random
.
Предложение
RecordLength
вFileOpen
функции не действует.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Int64, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Int64
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым файлового буфера. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если переменная, считываемая в , является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
в предложении функции, должна быть по крайнейFileOpen
мере на два байта больше, чем фактическая длина строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При помещении в файл дескриптор длины не записывается. Если вы хотите прочитать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, считываемая в, является массивом, можно выбрать, следует ли считать дескриптор для размера и измерения массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого в ,FileGet
определяют, что следует считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если переменная, считываемая в, является любым другим типом переменной (не строкой переменной длины или объектом),
FileGet
считывает только данные переменной. Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждая из них считывалась по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз количеству измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят все массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяется большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме , отличаются от правил режима Random
.
Предложение
RecordLength
вFileOpen
функции не действует.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Int32, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Int32
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Decimal, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Decimal
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Double, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Double
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым файлового буфера. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если переменная, считываемая в , является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
в предложении функции, должна быть по крайнейFileOpen
мере на два байта больше, чем фактическая длина строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При помещении в файл дескриптор длины не записывается. Если вы хотите прочитать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, считываемая в, является массивом, можно выбрать, следует ли считать дескриптор для размера и измерения массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого в ,FileGet
определяют, что следует считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если переменная, считываемая в, является любым другим типом переменной (не строкой переменной длины или объектом),
FileGet
считывает только данные переменной. Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждая из них считывалась по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз количеству измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят все массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяется большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме , отличаются от правил режима Random
.
Предложение
RecordLength
вFileOpen
функции не действует.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, DateTime, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- DateTime
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считанные с помощью FileGet
, обычно записываются в файл с FilePut
помощью .
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым файлового буфера. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если переменная, считываемая в , является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
в предложении функции, должна быть по крайнейFileOpen
мере на два байта больше, чем фактическая длина строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При помещении в файл дескриптор длины не записывается. Если вы хотите прочитать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, считываемая в, является массивом, можно выбрать, следует ли считать дескриптор для размера и измерения массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого в ,FileGet
определяют, что следует считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если переменная, считываемая в, является любым другим типом переменной (не строкой переменной длины или объектом),
FileGet
считывает только данные переменной. Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждая из них считывалась по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз количеству измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят все массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяется большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме , отличаются от правил режима Random
.
Предложение
RecordLength
вFileOpen
функции не действует.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Char, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Char
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считанные с помощью FileGet
, обычно записываются в файл с FilePut
помощью .
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым файлового буфера. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если переменная, считываемая в , является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
в предложении функции, должна быть по крайнейFileOpen
мере на два байта больше, чем фактическая длина строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При помещении в файл дескриптор длины не записывается. Если вы хотите прочитать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, считываемая в, является массивом, можно выбрать, следует ли считать дескриптор для размера и измерения массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого в ,FileGet
определяют, что следует считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если переменная, считываемая в, является любым другим типом переменной (не строкой переменной длины или объектом),
FileGet
считывает только данные переменной. Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждая из них считывалась по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз количеству измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная в предложенииRecordLength
FileOpen
в функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят все массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяется большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме , отличаются от правил режима Random
.
Предложение
RecordLength
вFileOpen
функции не действует.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая дескриптора двухбайтовой длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Byte, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Byte
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считанные с помощью FileGet
, обычно записываются в файл с FilePut
помощью .
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется. Затем размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Boolean, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Boolean
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считыванные с помощью FileGet
, обычно записываются в файл с FilePut
помощью .
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
FileGet(Int32, Int16, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Считывает данные из файла открытия диска в переменную. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с FileGet
. Для получения дополнительной информации см. 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)
Параметры
- FileNumber
- Int32
Обязательный. Любой допустимый номер файла.
- Value
- Int16
Обязательный. Допустимое имя переменной, в которую считываются данные.
- RecordNumber
- Int64
Необязательный элемент. Номер записи (файлы режима Random
) или номер байта (файлы режима Binary
), с которого начинается считывание.
Исключения
RecordNumber
< 1 и не равно –1.
Недопустимый режим файла.
Комментарии
FileGet
является допустимым только в Random
режиме и Binary
.
Данные, считываемые с помощью FileGet
, обычно записываются в файл с помощью FilePut
.
Первая запись или байт в файле находится в позиции 1, вторая запись или байт находится в позиции 2 и т. д. Если опустить RecordNumber
, считывается следующая запись или байт, следующий за последней FileGet
функцией или FilePut
(или на которую указывает последняя Seek
функция).
Важно!
При чтении из файлов не следует принимать решения о содержимом файла на основе расширения имени файла. Например, файл с именем Form1.vb может не быть исходным файлом Visual Basic.
Случайный режим
Для файлов, открытых в Random
режиме , применяются следующие правила:
Если длина считываемых данных меньше длины, указанной в
RecordLength
предложенииFileOpen
функции,FileGet
считывает последующие записи по границам длины записей. Пространство между концом одной записи и началом следующей записи заполняется существующим содержимым буфера файлов. Так как объем данных заполнения не может быть определен с какой-либо определенностью, обычно рекомендуется, чтобы длина записи соответствовала длине считываемых данных.По умолчанию, если считываемая переменная является строкой,
FileGet
считывает двухбайтовый дескриптор, содержащий длину строки, а затем считывает данные, попадающие в переменную. Таким образом, длина записи, указаннаяRecordLength
предложениемFileOpen
функции, должна быть по крайней мере на два байта больше фактической длины строки. Visual Basic 6.0 и более ранние версии поддерживают строки фиксированной длины; При установке в файл дескриптор длины не записывается. Если вы хотите считывать строку без дескриптора, следует передатьTrue
StringIsFixedLength
в параметр , а строка, в которую вы читаете, должна иметь правильную длину.Если переменная, в которой выполняется чтение, является массивом, можно выбрать, следует ли считать дескриптор для размера и размера массива. Чтобы записать дескриптор, задайте
ArrayIsDynamic
для параметра значениеTrue
. При чтении массива необходимо соответствовать способу записи массива. Если он был написан с помощью дескриптора, необходимо прочитать дескриптор. Если дескриптор не используется, размер и границы массива, передаваемого вFileGet
, определяют, что нужно считать.Дескриптор задает ранг массива, размер и нижние границы для каждого ранга. Его длина в 2 плюс 8 раз превышает количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная параметром
RecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для записи данных массива и дескриптора массива. Например, для следующего объявления массива требуется 218 байт при записи массива на диск.Dim MyArray(4, 9) As Integer
218 байт распределяются следующим образом:
18 байт для дескриптора: (2 + 8 * 2)
200 байт для данных: (5 * 10 * 4).
Если считываемая переменная имеет любой другой тип переменной (не строку переменной длины или объект),
FileGet
считывает только данные переменной. Длина записи, указанная предложениемRecordLength
FileOpen
в функции, должна быть больше или равна длине считываемых данных.FileGet
считывает элементы структур так, как если бы каждый из них считывался по отдельности, за исключением того, что между элементами отсутствует заполнение. На диске динамический массив в определяемом пользователем типе (записанный сFilePut
помощью ) имеет префикс дескриптора, длина которого равна 2 плюс 8 раз больше, чем количество измерений: (2 + 8 * NumberOfDimensions). Длина записи, указанная предложениемRecordLength
вFileOpen
функции, должна быть больше или равна сумме всех байтов, необходимых для чтения отдельных элементов. Сюда входят любые массивы и их дескрипторы. АтрибутVBFixedString
может применяться к строковым полям в структурах, чтобы указать размер строки при записи на диск.
Двоичный режим
Для файлов, открытых Random
в Binary
режиме , применяются большинство правил режима, за некоторыми исключениями. Следующие правила для файлов, открытых в Binary
режиме, отличаются от правил режима Random
.
Предложение
RecordLength
в функции не имеет никакогоFileOpen
действия.FileGet
считывает все переменные с диска непрерывно; то есть без заполнения между записями.Для любого массива, отличного от массива в структуре,
FileGet
считывает только данные. Дескриптор не считывается.FileGet
считывает строки переменной длины, которые не являются элементами структур, не ожидая двухбайтового дескриптора длины. Число прочитанных байтов равно количеству символов, уже имеющихся в строке.Важно!
Для чтения из файла с помощью
FileGet
функции требуетсяRead
доступ из перечисления FileIOPermissionAccess .
См. также раздел
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- Seek
- FileGetObject(Int32, Object, Int64)
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic