Работа с файлами в языке С++ с помощью класса fstream
Вопрос: Что такое fstream и как его использовать?
fstream - это класс в языке программирования C++, который позволяет осуществлять работу с файлами ввода-вывода. fstream наследуется от класса iostream и представлен двумя шаблонными классами: ifstream для работы с файлами ввода и ofstream для работы с файлами вывода.
Для работы с fstream нужно создать объект класса ifstream или ofstream, указав имя файла в конструкторе, либо через метод open. Он представляет файл в оперативной памяти и позволяет прочитать или записать данные в файл.
Например, для чтения данных из файла можно использовать следующий код:
#include
#include
using namespace std;
int main () {
char data[100];
// открываем файл в режиме чтения
ifstream myfile;
myfile.open ("example.txt");
// считываем данные из файла
myfile >> data;
cout << data << endl;
// закрываем файл
myfile.close();
return 0;
}
Для записи данных в файл можно использовать следующий код:
#include
#include
using namespace std;
int main () {
char data[100] = "Hello World!";
// открываем файл в режиме записи
ofstream myfile;
myfile.open ("example.txt");
// записываем данные в файл
myfile << data << endl;
// закрываем файл
myfile.close();
return 0;
}
Также можно использовать методы fstream для перемещения указателя чтения/записи файла и получения размера файла. Например, чтобы получить размер файла, можно использовать следующий код:
#include
#include
using namespace std;
int main () {
int size;
// открываем файл в режиме чтения
ifstream myfile;
myfile.open ("example.txt");
// получаем размер файла
myfile.seekg(0, ios::end);
size = myfile.tellg();
myfile.seekg(0, ios::beg);
// закрываем файл
myfile.close();
// выводим размер файла на экран
cout << "Size of file: " << size << " bytes." << endl;
return 0;
}