ВУЗ:
Составители:
Рубрика:
183
#include <iostream.h>
#include <fstream.h>
void main(int argc, char* argv[]){ int size = 0;
if (argc > 1){ const char *FileName = argv[1];
ofstream of;
of.open( FileName, ios::binary );
for(int i = 0; i<100; i++) of.put ((char)(i+27));
of.close();
ifstream file;
file.open(FileName, ios::in | ios::binary);
if (file){file.seekg(0, ios::end);
size = file.tellg();
if (size < 0){ cerr << FileName << ” не найден.”; return; }
cout << FileName << ” size = ” << size<<endl;
}}
else cout << ”Вы не задали имя файла.”;
}
Программа выводит на экран длину заданного файла.
27.9. Опрос и установка состояния потока
Класс ios поддерживает информацию о состоянии потока после
каждой операции ввода-вывода. Текущее состояние потока хранится в
объекте типа iostate, который объявлен следующим образом:
typedef int iostate;
Состояния потока являются элементами перечислимого типа
io_state, который может иметь значения, представленные в табл. 9.
Таблица 9
Состояния потока и их значения
Состояние Значение
Goodbit Ошибок нет
Eofbit Достигнут конец файла
Failbit Имеет место ошибка форматирования или
преобразования
Badbit Имеет место серьезная ошибка
Для опроса и установки состояния потока можно использовать
функции-члены класса ios. Имеется два способа получения информа-
Страницы
- « первая
- ‹ предыдущая
- …
- 179
- 180
- 181
- 182
- 183
- …
- следующая ›
- последняя »