Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Потоковый ввод/вывод дисковых файлов.

Читайте также:
  1. Атрибуты файлов. Дерево каталогов. Простое, полное и относительное имя файла.
  2. Ввод/вывод Java
  3. Команда используется для смены владельца/группы файлов.
  4. Лекция 9. Настройка папок и файлов. Настройка средств
  5. Логическая и физическая организация файлов.
  6. Основные процедуры и функции для обработки текстовых файлов.
  7. Понятие об устройстве файловой системы в UNIX. Полные и относительные имена файлов.
  8. Потоковый ввод-вывод
  9. Произвольный доступ к элементам файлов.

Для работы с дисковыми файлами необходимо подключение заголовочного файла <fstream>, содержащего наборы специальных классов:

- ifstream — для ввода,

- ofstream — для вывода,

- fstream — для чтения и записи данных в один и тот же файл.

Чтобы получить возможность работать с дисковым файлом, нужно открыть его с указанием режима доступа, который определяется значением константы open-mode класса ios.

 

Режим доступа Стандарт Действие
app нет открывает файл для дозаписи
ate(atend) да при открытии файла устанавливает файловый указатель на конец файла
binary(bin) да открыть файл в двоичном представлении
in да открыть файл для чтения (ввода)
nocreate нет если файл не существует, то новый файл не создается
noreplace нет если файл уже существует, файл не перезаписывается
out да открыть файл для записи (вывода)
trunc нет Открывает и усекает существующий файл. Новая информация замещает существующую

 

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

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

Для создания текстового файла определяют объект класса 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, позволяет осуществлять посимвольную запись данных в текстовый файл.




Дата добавления: 2014-12-18; просмотров: 26 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав