Кент Рейсдорф. BORLAND C++BUILDER. Раздел 1

Кент Рейсдорф. BORLAND C++BUILDER. Страница 93

В строке 14 создается экземпляр класса ofstream и файл TEST.DAT. Затем в созданный файл записывается 10 текстовых строк. Строка 18 служит примером использования оператора вставки для записи в файл. Обратите внимание, что после текстовой строки в файл записывается целое число (i + 1). Оно автоматически преобразуется в строку и помещается в выходной поток. Формирование строки файла завершает манипулятор endl. Этот цикл повторяется 10 раз. Строка 20 закрывает файл после завершения цикла. В данном случае закрытие файла необходимо, поскольку мы собираемся повторно открыть его для чтения. Для незакрытого файла это будет невозмож­но. В строках 25-28 для вывода на экран используется процедура, похожая на ту, что применялась в примере READFILE.CPP. После запуска программы из листинга 4.5 на экран будет выведено следующее:

Режимы открытия файлов

Файлы могут быть открыты в нескольких различных режимах. На­пример, при открытии файла с помощью класса ofstream по умолчанию создается новый файл. Это означает, что при использовании режима по умолчанию вы перезапишете существующий файл. Часто это совсем не то, что нужно. Например, иногда требуется добавить данные в конец суще­ствующего файла. В этом случае файл должен быть открыт в режиме добавления. Чтобы указать режим открытия файла, вы должны при со­здании объекта использовать один из спецификаторов openmode класса ios в конструкторе ofstream:

ofstream outfile("test.dat", ios::app); // открыть в режиме добавления

В этом случае новые данные будут записаны в конец файла. Сущест­вует несколько спецификаторов, которые можно использовать при откры­тии файлов. В таблице 4.1 представлен список значений, которые может принимать перечисление open_mode, а также описания соответствующих режимов.

Web-дизайн (с) 2010 All rights reserved