Программирование >>  Элементы языков с и с++ 

1 ... 68 69 70 [ 71 ] 72 73 74 ... 200


чтение 1-й строки (длиной не более 100 символов)

inout.getline(р,100);

вывод 1-й строки на экран (stdout)

cout endl Stringl : endl;

cout p;

запоминание текущей позиции в файле после 1-го вывода

fstream::pos type pos = inout.tellg(); чтение 2-й строки из файла inout.getline(р,100); вывод 2-й строки на экран (stdout) cout endl String2 : endl; cout p;

чтение 3-й строки из файла inout.getline(p,100); вывод 3-й строки на экран (stdout) cout endl String3 : endl; cout p;

установка указателя перед 2-й строкой

inout.seekp(pos);

запись на место 2-й строки

inout This is the story2 of a man endl;

void tmain ( ) {

using namespace std; /*Используется стандартное пространство

имен. Создание двунаправленного (чтение/запись в одном и том же файле) объекта (экземпляра)*/

fstream inout;

inout.open( fstream.out ,ios base::in ios base::out I ios base::trunc);

вывод в файл

inout This is the storyl of a man endl; inout This is the story2 of a man endl; inout This is the story3 of a man endl; char p[100];

установка указателя файла (позиционирование) в его начало inout.seekg(О);



запись на место 3-й строки

incut This is the story3 of a man endl; установка на начало файла incut, see kg (0) ;

вывод всего содерзкимого потока на экран (stdout)

ccut endl endl inout. rdbuf ();

incut. close ();

system ( DEL FSTREAM.OUT ) ;

getch();

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

C:\WINOOWS\system32V:md.ej№


продолжен


f а man

f а nan

f а nan f a nan f a nan

ите любую клавишу

Рис. 9.8. Результаты работы программы листинга 9.10

Работа с классом of stream

Этог класс предназначен для организации работ по выводу (записи) в файл с помощью методов этого класса:

D open () - открывает файл для записи в него информации;

□ isopen () - возвращает true, если файл открыт, и false - в противном случае;

D put () - записывает в файл один символ;

1Ь 960



Листинг 9.11

ttinclude <fstream>

ofstream FILE; /*объявляем переменную FILE типа ofstream (создаем экземпляр класса)*/

FILE.open( а.txt ); вызываем метод открытия файла if(FILE ==NULL) return(О); неудачное открытие файла for(int i=0; i<2; i++)

FILE string i endl; вывод в файл FILE.closeО; закрытие файла

Работа с классом ifstream

Этот класс предназначен для организации работ по вводу (чтению) из с помощью методов этого класса:

П open () - открывает файл для чтения из него информации;

П isopen () - возвращает true, если файл открыт, и false - в противном случае;

П get () - читает из файла один символ;

П read () - читает из файла заданное число символов;

П eof о - возвращает ненулевое значение, когда указатель позиционирования достигает конца файла;

П реек о - выдает очередной символ потока, но не выбирает его (не сдвигает указатель позиционирования данного в файле);

П seekgO - перемещает указатель позиционирования в заданное место файла;

п write () - записывает в файл заданное число символов;

П Skeep о - перемещает указатель позиционирования в заданное место файла;

П tellpo -выдает текущее значение указателя позиционирования; П close о-закрывает файл;

П rdbuf () - выдает указатель на буфер вывода (этот буфер находится в структуре, с которой связывается файл при его открытии).

В листинге 9.11 приведен пример использования класса ofstream.



1 ... 68 69 70 [ 71 ] 72 73 74 ... 200

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика