Rapid-Q Documentation by William Yu (c)1999-2000 | Appendix A: QFILESTREAM |
Поле | Тип | R/W | По умолчанию | Поддерживается |
EOF | INTEGER | R | WXG | |
EOF определяет когда указатель текущей позиции достиг конца файла. | ||||
Handle | INTEGER | R | W | |
. ???? | ||||
LineCount | INTEGER | R | WXG | |
LineCount определяет сколько строк содержится в текстовом файле. Признаком конца строки считается символ LF (ascii 10), а симво CR игнорируется , поэтому CRLF считается одной строкой, а LFLF - 2 строки. | ||||
Position | INTEGER | RW | WXG | |
Position - определяет текущую позицию указателя в байтах и операции чтения\записи будут начинаться с этого места. | ||||
Size | INTEGER | R | WXG | |
Size - определяет размер файла в байтах. |
Метод | Тип | Описание | Параметры | Поддерживается |
Close | SUB | Закрывает файл после работы с ним | 0 | WXG |
CopyFrom | SUB (Stream, Bytes&) | Копирует данные из другого потока QFileStream или QMemoryStream Если Bytes&=0 то копируются все данные | 2 | W |
Используйте CopyFrom для копирования QFILESTREAM или QMEMORYSTREAM в текущий файл. Детали: Если Bytes% = 0 то все данные будут скопированы. Пример:
| ||||
ExtractRes | SUB (Resource AS LONG) | Извлекает ресурсы в файл | 1 | WXG |
Извлекает ресурсы из вашей програмы в файл Детали: Параметр Resource это не указатель на ресурс (resource handle), а абсолютная позиция ресурса в вашей программе. Используйте ключевое слово Resource(n) для указания номера ресурса. Пример (извлечение в память (dumping) всех ресурсов):
| ||||
LoadArray | SUB (Array(), NumElements&) | Считывает данные из файла в массив | 2 | WXG |
Open | SUB (FileName$, Mode%) | Открывает файл, Mode% см. RAPIDQ.INC
'-- File Mode CONST fmCreate = 65535 ' создать CONST fmOpenRead = 0 ' только для чтения CONST fmOpenWrite = 1 ' только для записи CONST fmOpenReadWrite = 2 ' для чтения и записи | 2 | WXG |
Read | SUB (variable) | Generic Read, determines the storage space and saves data in variable | 1 | WXG |
Datasize is automatically determined, and the value is stored into the variable. Пример:
| ||||
ReadLine | FUNCTION () AS STRING | Reads an entire line, supports UNIX files | 0 | WXG |
ReadNum | FUNCTION (Num_Type) AS DOUBLE | Возвращает number
'-- ie. PRINT File.ReadNum(Num_SINGLE)
Num_Type can be next | 1 | WXG |
ReadBinStr | FUNCTION (n) AS STRING | Read n bytes, returns the binary string | 1 | WXG |
ReadStr | FUNCTION (n) AS STRING | Read n bytes, returns the text string | 1 | WXG |
ReadUDT | SUB (MyType) | Read and store data in a MyType structure | 1 | WXG |
SaveArray | SUB (Array(), NumElements&) | Save array | 2 | WXG |
Seek | SUB (Position%, From%) | Seek to Position%, From% see RAPIDQ.INC '-- Offsets CONST soFromBeginning = 0 '-- Seek (offset) from Beginning CONST soFromCurrent = 1 '-- Seek (offset) from Current position CONST soFromEnd = 2 '-- Seek (offset) from End | 2 | WXG |
Write | SUB (variable) | Generic Write, determines the storage space and saves data to file | 1 | WXG |
WriteLine | SUB (S AS STRING) | Writes string with CR+LF | 1 | WXG |
WriteNum | SUB (number, bytes%) | Writes a number to file | 2 | WXG |
WriteBinStr | SUB (string, bytes%) | Writes a binary string to file | 2 | WXG |
WriteStr | SUB (string, bytes%) | Writes a text string to file (fast) | 2 | WXG |
WriteUDT | SUB (MyType) | Write data stored in a MyType structure | 1 | WXG |
$INCLUDE "RAPIDQ.INC" DIM File AS QFileStream File.Open("test.bas", fmOpenRead) S$ = File.ReadStr(File.Size) '' Read entire file PRINT S$ '' print it File.Close '------------------------------------------------------ $INCLUDE "RAPIDQ.INC" TYPE MyType Name AS STRING*30 Phone AS STRING*8 Age AS INTEGER END TYPE DIM Person AS MyType Person.Name = "Joe" Person.Phone = "555-5555" DIM File AS QFileStream File.Open("test", fmCreate) File.WriteUDT(Person)
Предыдущий Компонент | Содержание | Следующий Компонент |