Клас fstream в с, мови програмування
Для роботи з файлами в С ++ дуже часто використовується клас fstream. В цьому класі реалізовані функції відкриття і закриття файлу, а також члени класу, які дозволяють позиціонувати покажчик (місце де ми знаходимося). Існують різні способи відкриття файлу, які задаються лічильної змінної open_mode.
Відкриття файлу за допомогою fstream
- app - відкрити файл для до запису в кінець;
- binary - відкрити файл в бінарному вигляді;
- in - відкрити файл для читання;
- out - відкрити файл для запису з початку. Якщо файл не існує, то він буде створений новий файл;
- trunc - очистити файл від вмісту;
- ate - покажчик позиції в файлі встановити в кінець.
Все вище зазначені змінні є членами базового класу ios. Тому слід вказувати повний шлях: ios :: in. ios :: out і так далі.
функції fstream
- open () - відкриває файл;
- is_open () - перевірка відкриття файлу. Якщо відкритий, то функція поверне TRUE інакше FALSE;
- rdbuf () - видає покажчик на буфер введення / виведення;
- getline (param1, param2) - прочитати рядок з файлу в змінну param1, довгою param2;
- close () - закрити файл.
Відкриття файлу функцією open () осуществяется з параметрами. Наприклад: FILE.open ( «myfile.txt», ios_base :: in); або FILE.open ( «myfile.txt», ios_base :: in | ios_base :: out);
Приклад використання класу fstream в С ++:
[Code]
#include
#include
#include
using namespace std;
int main ()
setlocale (LC_ALL, "Russian");
fstream FILE;
// блок записи в файл
FILE.open ( "myfile.txt", ios_base :: out);
FILE<<"Первая строка"<
FILE.close (); //
// блок читання з файлу по рядково
FILE.open ( "myfile.txt", ios_base :: in);
char str [50];
FILE.getline (str, 50);
cout<
cout<
cout<
// блок читання з файлу всього вмісту
FILE.open ( "myfile.txt", ios_base :: in);
cout<
// блок читання з файлу по рядково в циклі
FILE.open ( "myfile.txt", ios_base :: in);
while (! FILE.eof ())
FILE.getline (str, 50);
cout<
FILE.close (); //