Текстовые файлы.

Создание и запись.

Для создания текстового файла определяют объект класса ofstream и передают конструктору класса имя дискового файла в качестве первого параметра и режим доступа в качестве второго параметра:

ofstream out_file(“Out.txt”, ios::out);

Можно объявить константу, определяющую режим открытия файла, например:

const ois::open_mode=ois::out | ios::app;

После того, как предпринималась попытка открыть файл, следует убедиться в том, что файл открыт и готов для записи (или перезаписи):

if (! out_file) { cerr<<”Error: unable to write to out.txt”<<endl;

exit(1);

}

Все сказанное верно и для файлов, открываемых для чтения (или входных файлов):

ifstream in_file(“Input.txt”, ios::in);

if (! in_file) { cerr<<”Error: unable to open Input.txt”<<endl;

exit(1);

}

При работе с текстовыми файлами наиболее часто встречаются 4 действия:

- посимвольное чтение - посимвольная запись - построчное чтение - построчная запись

 

Посимвольное чтение текста.

Функция get(), которая является методом istream, применяется для посимвольного чтения текстового файла.

Пример 13.1. Посимвольное чтение файла и вывод его на экран.

# include <fstream>

# include <iostream>

using namespace std:

int main()

{ char sym;

ifstream in_file (“Input_file.txt”, ios::in);

if (! in_file) { cerr<<”Error input file”<<endl;

exit(1);

}

while (in_file) { in_file.get(sym);

cout<<sym;

}

cout<<endl;

return 0;

}

 

Посимвольная запись текста.

Функция put(), которая является методом ostream, позволяет осуществлять посимвольную запись данных в текстовый файл.