C++

С++ программирование / Уроки C++

26 уроков 41 задание Справочник Компилятор

Урок #14 - Работа с файлами

Урок #14 - Работа с файлами


C++

В этом уроке мы научимся работать с файлами посредством использования заголовочного файла fstream в языке программирования C++. Мы научимся записывать данные в файл (ofstream), а также считывать данные из файла (ifstream).

Видео урок:

C++ способен осуществлять работу с файлами. Для этого существует специальная библиотека fstream, которая отвечает за функции открытия файла, записи в него информации, а также для чтения информации из него.

Запись в файл

Для записи текста в файл используется класс ofstream, после чего следует название создаваемого файла.
// Создание/открытие файла "examples.txt"
ofstream itproger_file("examples.txt");
// Можно было использовать метод open
// ofstream itproger_file;
// itproger_file.open("examples.txt");
// но первая запись короче, поэтому стоит использовать её
if (itproger_file.is_open()) { // Проверяем открыт ли файл
    itproger_file << "Simple text"; // Записываем текст в файл
    itproger_file.close(); // Всегда необходимо закрывать файл
} else // Если файл не удалось открыть, тогда выдаем ошибку
    cout << "Error!" << endl;
Таким образом мы можем открыть файл и поместить в него любую информацию. Очень важно, каждый раз при открытии файла - закрывать его. Иначе это вызовет нагрузку на процессор, а также ваша программа попросту не скомпилируется.

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



Их необходимо прописывать в качестве второго параметра при открытии файла.
#include <iostream>
#include <fstream>

using namespace std; 

int main() {
  // Открываем файл для записи в него текста
  ofstream file("test.txt", ios_base::out);
  if (file.is_open()) { // Проверяем открыт ли сам файл
    file << "Simple world"; // Записываем текст в начало файла
    textFile.close(); // Закрываем файл
  }
  
  cin.get();
  return 0; 
}

Чтение данных из файла

Чтобы прочесть данные из файла необходимо выполнить те же самые действия, только на этот раз использовать класс ifstream.
#include <iostream>
#include <fstream>

using namespace std; 

int main() {
    // здесь будет храниться промежуточный текст,
    // который мы будем считывать из файла
    char temp[100];
    ifstream some_file("test.txt"); // открываем файл для чтения

    // считываем лишь первое слово и помещаем в переменную temp
    some_file >> temp;
    cout << temp << endl; // выводим эту переменную

    // Считываем определенное количество символов - 100
    // и записываем их в нашу переменную
    some_file.getline(temp, 100);
    some_file.close(); // Закрываем файл
    cout << temp << endl; // Отображаем переменную temp
  
    cin.get();
    return 0; 
}

Исходный код

Весь код будет доступен после подписки на проект!

Онлайн редактор кода

Загрузка...

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям!

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы получить большое задание. Такие задания есть к каждому курсу. В них входит задание, методика решения, а также "Готовое решение".
PS: подобные задания доступны при подписке от 1 месяца!


C++

Также стоит посмотреть