Работа с файлами в С++

Содержание

Слайд 2

именованный набор  байтов, который может быть сохранен на некотором накопителе и имеет

именованный набор байтов, который может быть сохранен на некотором накопителе и имеет
уникальное имя
file.txt 
file.dat

Файл – это..

Слайд 3

Полный адрес к директории файла с указанием имени файла,
D:\docs\file.txt

Полное имя файлов

Полный адрес к директории файла с указанием имени файла, D:\docs\file.txt Полное имя файлов

Слайд 4

Подключить заголовочный файл 
Содержит несколько классов
подключены заголовочные файлы 
 — файловый ввод
  — файловый вывод.
Файловый ввод/вывод

Подключить заголовочный файл Содержит несколько классов подключены заголовочные файлы — файловый ввод
аналогичен стандартному вводу/выводу

Для работы с файлами

Слайд 5

Создать текстовый файл и записать в него строку
создать объект класса ofstream;
связать объект класса

Создать текстовый файл и записать в него строку создать объект класса ofstream;
с файлом, в который будет производиться запись;
записать строку в файл;
закрыть файл.

Пример 1

Слайд 6

// создаём объект для записи в файл
ofstream  fout; 
// связываем объект с файлом
fout.open("cppstudio.txt"); 
//запись

// создаём объект для записи в файл ofstream fout; // связываем объект
строки в файл
fout << "Работа с файлами в С++"; 
// закрываем файл
fout.close();

Пример 1 (реализация)

Слайд 7

Указанный файл будет создан в текущей директории с программой. Если файл с

Указанный файл будет создан в текущей директории с программой. Если файл с
таким именем существует, то существующий файл будет заменен новым
одной строке создать объект и связать его с файлом
ofstream fout("cppstudio.txt");

Пояснения

Слайд 8

создать объект класса ifstream и связать его с файлом, из которого будет производиться считывание;
прочитать

создать объект класса ifstream и связать его с файлом, из которого будет
файл;
закрыть файл.

Как считать данные из файла?

Слайд 9

setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы
    char buff[50]; // буфер промежуточного хранения считываемого из файла текста
    ifstream

setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы char buff[50]; // буфер промежуточного хранения
fin("cppstudio.txt"); // открыли файл для чтения
fin >> buff; // считали первое слово из файла
    cout << buff << endl; // напечатали это слово
fin.close(); // закрываем файл

Пример 2 (1 способ считывание данных)

Слайд 10

setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы
    char buff[50]; // буфер промежуточного хранения считываемого из файла текста
ifstream

setlocale(LC_ALL, "rus"); // корректное отображение Кириллицы char buff[50]; // буфер промежуточного хранения
fin("cppstudio.txt"); // открыли файл для чтения
fin.getline(buff, 50); // считали строку из файла
    fin.close(); // закрываем файл
    cout << buff << endl; // напечатали эту строку

Пример 2 (2 способ считывание данных)

Слайд 11

char buff[50]; // буфер промежуточного хранения считываемого из файла текста
    ifstream fin("cppstudio.doc"); // (ВВЕЛИ НЕ

char buff[50]; // буфер промежуточного хранения считываемого из файла текста ifstream fin("cppstudio.doc");
КОРРЕКТНОЕ ИМЯ ФАЙЛА)
if (!fin.is_open()) // если файл не открыт
        cout << "Файл не может быть открыт!\n"; // сообщить об этом
    else
    {
    fin >> buff; // считали первое слово из файла
    cout << buff << endl; // напечатали это слово
fin.getline(buff, 50); // считали строку из файла
    fin.close(); // закрываем файл
    cout << buff << endl; // напечатали эту строку
    }

Проверка доступа к файлу

Слайд 12

установка режима в классе ios_base в виде константы

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

установка режима в классе ios_base в виде константы Режимы открытия файлов

Слайд 13

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

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

Слайд 14

// открываем файл для добавления информации к концу файла
ofstream fout("cppstudio.txt", ios_base::app); 
// открываем

// открываем файл для добавления информации к концу файла ofstream fout("cppstudio.txt", ios_base::app);
файл для добавления информации к концу файла
fout.open("cppstudio.txt", ios_base::app); 

Режим устанавливаем при открытии файла или создании объекта