Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа6.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
103.42 Кб
Скачать

3.4. Файлы.

В С++ отсутствуют встроенные средства ввода / вывода данных. Взамен им в Borland C++ версий 2.0 и выше используется библиотека классов. Для использования этих библиотек, как отмечалось выше, необходимо включить в программу соответствующие заголовочные файлы. Иерархия классов ввода / вывода может быть представлена следующим рисунком:

ios

istream ostream

ifstream iostream ofstream

fstream

где: ios- базовый класс (ввода/вывода); iostream - класс потокового ввода; ostream - класс потокового вывода; iostream- класс потокового ввода/вывода; ifstream - класс ввода файлов; ofstream- класс вывода файлов; fstream - класс ввода/вывода файлов;

Каждый класс имеет свои функции члены, использование которых в программе требует подключение соответствующих заголовочных файлов.

При использовании библиотеки классов С++ операции открытия, создания и закрытия, выполняются при создании объектов выходного (входного ) файлового потока. Например:

#include <iostream.h>

#include <fstream.h> // ofstream

#include <stdlib.h> // содержит функцию exit

int main()

{ char sim;

// создаётся файл, старый стирается

ofstream myfile("d:\oop\myfile.txt",ios::out);

if(!myfile)

{

cerr<<" ошибка открытия myfile.txt"<<endl;

exit(1);

}

for(int i=1;i<10;i++){

cout<<"введите символ"<<endl;

cin>>sim;

myfile.put(sim); }

myfile<<endl;

return 0;

}

#include <iostream.h>

//#include <fstream.h> // ofstream

#include <fstream.h>

#include <stdlib.h> // содержит функцию exit

int main()

{ char sim;

ifstream myfile("d:\oop\myfile.txt",ios::in);

if(!myfile)

{

cerr<<" ошибка открытия myfile.txt"<<endl;

exit(1);

}

int nsim=0, kolstr=0;

while (myfile.get(sim)){

if (sim==char("\n"))

kolstr++;

else

nsim++;

cout.put(sim); }

cout<<endl<<endl<<"kolstr="<<kolstr<<" "<<"nsim="<<nsim<<endl;

cin>>nsim;

return 0;

}

#include <iostream.h>

#include <fstream.h> // ofstream

#include <stdlib.h> // содержит функцию exit

int main()

{ char sim;

ofstream myfile("d:\oop\myfile.txt",ios::in); // открывается

// файл для чтения

if(!myfile)

{

cerr<<" ошибка открытия myfile.txt"<<endl;

exit(1);

}

for(int i=1;i<10;i++){........................}

cout<<"введите символ"<<endl;

cin>>sim;

myfile.put(sim); }

myfile<<endl;

return 0;

}

#include <iostream.h>

#include <fstream.h> // ofstream

#include <stdlib.h> // содержит функцию exit

#define size 40

int main()

{ char sim,*filename;

cout<<"введите имя файла и путь d:\oop\myfile.txt \n";

filename=new char(size);

cin.getline(filename,size);

ofstream myfile(filename,ios::out);

if(!myfile)

{

cerr<<" ошибка открытия myfile.txt"<<endl;

cin>>sim;

exit(1);

}

for(int i=1;i<10;i++){. . . . . . . . . . }

cout<<"введите символ"<<endl;

cin>>sim;

myfile.put(sim); }

myfile<<endl;

delete[]filename;

return 0;

}