FOnline
 Указатель Классы Функции Переменные Группы Страницы

Класс, предназначенный для чтения и записи текстовых файлов. Подробнее...

Закрытые члены

int open (const string &in filename, const string &in mode)
 Открывает файл для работы с ним в указанном режиме. Подробнее...
 
int close ()
 Закрывает файл. Подробнее...
 
int getSize () const
 Возвращает размер файла. Подробнее...
 
bool isEndOfFile () const
 Возвращает значение true, если был достигнут конец файла. Подробнее...
 
int readString (uint length, string &out str)
 Выполняет чтение из файла указанного количества символов. Подробнее...
 
int readLine (string &out str)
 Выполняет чтение строки символов. Подробнее...
 
int writeString (const string &in string)
 Записывает строку в файл. Подробнее...
 
int getPos () const
 Возвращает текущую позицию файла. Подробнее...
 
int setPos (int pos)
 Устанавливает текущую позицию файла. Подробнее...
 
int movePos (int delta)
 Смещает текущую позицию файла на указанное количество байт. Подробнее...
 
string readWord ()
 Выполняет чтение следующего слова (последовательности символов без разделителей) из файла. Подробнее...
 
int readNumber ()
 Выполняет чтение следующего числа из файла. Подробнее...
 
uint8 readUint8 ()
 
uint16 readUint16 ()
 
uint32 readUint32 ()
 
uint64 readUint64 ()
 
uint readData (uint count, uint8[]&data)
 Если data == 0, то программа читает все данные до конца файла с текущей позиции. Подробнее...
 
bool writeUint8 (uint8 data)
 
bool writeUint16 (uint16 data)
 
bool writeUint32 (uint32 data)
 
bool writeUint64 (uint64 data)
 
bool writeData (uint8[]&data, uint count)
 При count == 0 записывает все данные из массива. Подробнее...
 

Подробное описание

Класс, предназначенный для чтения и записи текстовых файлов.

Пример:
file f;
//
if( f.open("file.txt", "r") >= 0 )
{
//
string str;
f.readString(f.getSize(), str);
f.close();
}

Методы

int open ( const string &in  filename,
const string &in  mode 
)
private

Открывает файл для работы с ним в указанном режиме.

Аргументы
filenameПуть к файлу.
modeРежим работы с файлом. Возможные значения:
"r"Открыть файл для чтения.
"w"Открыть файл для записи. Существующий файл перезаписывается.
"a"Открыть файл для записи с конца (существующий файл не перезаписывается).
Возвращает
0, если файл открыт успешно; -1 – в противном случае.
int close ( )
private

Закрывает файл.

Возвращает
0, если файл закрыт успешно; -1 – в противном случае.
int getSize ( ) const
private

Возвращает размер файла.

bool isEndOfFile ( ) const
private

Возвращает значение true, если был достигнут конец файла.

int readString ( uint  length,
string &out  str 
)
private

Выполняет чтение из файла указанного количества символов.

Аргументы
lengthКоличество считываемых символов.
[out]strСтрока, в которую будут записаны считанные символы.
Возвращает
Количество успешно считанных символов. Если это число отличается от аргумента length, то это означает, что либо при чтении произошла ошибка, либо был достигнут конец файла.
См. также
isEndOfFile
int readLine ( string &out  str)
private

Выполняет чтение строки символов.

Строка определяется как последовательность символов, за которыми следует символ символ перевода строки или EOF.

Аргументы
[out]strСтрока, в которую будут записаны считанная строка символов.
Возвращает
Количество символов в считанной строке.
int writeString ( const string &in  string)
private

Записывает строку в файл.

Аргументы
stringЗаписываемая строка.
Возвращает
Количество записанных символов. Если это число меньше, чем длина строки, то это говорит об ошибке.
int getPos ( ) const
private

Возвращает текущую позицию файла.

Возвращает
Текущая позиция в файле. -1 – в случае ошибки.
int setPos ( int  pos)
private

Устанавливает текущую позицию файла.

Аргументы
posНовая позиция.
Возвращает
0 в случае успеха; -1 – в противном случае.
int movePos ( int  delta)
private

Смещает текущую позицию файла на указанное количество байт.

Аргументы
deltaКоличество байт, на которую смещается текущая позиция.
Возвращает
0 в случае успеха; -1 – в противном случае.
string readWord ( )
private

Выполняет чтение следующего слова (последовательности символов без разделителей) из файла.

int readNumber ( )
private

Выполняет чтение следующего числа из файла.

uint8 readUint8 ( )
private
uint16 readUint16 ( )
private
uint32 readUint32 ( )
private
uint64 readUint64 ( )
private
uint readData ( uint  count,
uint8 &[]  data 
)
private

Если data == 0, то программа читает все данные до конца файла с текущей позиции.

Прочтенные данные добавляются в конец массива. Возвращаемое значение указывает на реально прочтенное число байт.

bool writeUint8 ( uint8  data)
private
bool writeUint16 ( uint16  data)
private
bool writeUint32 ( uint32  data)
private
bool writeUint64 ( uint64  data)
private
bool writeData ( uint8 &[]  data,
uint  count 
)
private

При count == 0 записывает все данные из массива.