Файловый ввод и вывод в C++

НАВИГАЦИЯ ПО СТРАНИЦЕ

Файловый вывод Файловый ввод

В C++, ввод и вывод в файлы выполняются с использованием потоков (streams) из стандартной библиотеки <fstream>. Вот примеры основных операций файлового ввода и вывода:

Файловый вывод (запись в файл):

#include <iostream>
#include <fstream>

int main() {
    // Открытие файла для записи
    std::ofstream outputFile("example.txt");

    // Проверка, успешно ли открыт файл
    if (outputFile.is_open()) {
        // Запись в файл
        outputFile << "Hello, World!\n";
        outputFile << "This is a C++ file output example.\n";

        // Закрытие файла
        outputFile.close();
        std::cout << "Data has been written to the file.\n";
    } else {
        std::cerr << "Unable to open the file for writing.\n";
    }

    return 0;
}

Файловый ввод (чтение из файла):

#include <iostream>
#include <fstream>
#include <string>

int main() {
    // Открытие файла для чтения
    std::ifstream inputFile("example.txt");

    // Проверка, успешно ли открыт файл
    if (inputFile.is_open()) {
        // Чтение из файла построчно
        std::string line;
        while (std::getline(inputFile, line)) {
            std::cout << line << "\n";
        }

        // Закрытие файла
        inputFile.close();
    } else {
        std::cerr << "Unable to open the file for reading.\n";
    }

    return 0;
}

Дополнительные операции:

Дописывание в конец файла:

std::ofstream outputFile("example.txt", std::ios::app);

Проверка конца файла:

while (!inputFile.eof()) {
    // ...чтение из файла...
}

Установка позиции чтения/записи в файле:

// Установка указателя чтения/записи в начало файла
outputFile.seekp(0, std::ios::beg);

// Установка указателя чтения/записи в конец файла
outputFile.seekp(0, std::ios::end);

Убедитесь, что у вас есть достаточные права для доступа к файлам, и обрабатывайте ошибки открытия файлов. Операции с файлами могут вызывать ошибки, такие как отсутствие файла, недостаточные права доступа и т. д.