Разделы презентаций


Работа с текстовыми файлами

Содержание

ФайлФайл – поименованная область на внешнем носителе Файл можно представить как конечное количество последовательных байтовУстройства, такие как дисплей, клавиатура, принтер, можно рассматривать как частные случаи файлов

Слайды и текст этой презентации

Слайд 1Работа с текстовыми файлами



C++

Работа с текстовыми файламиC++

Слайд 2Файл
Файл – поименованная область на внешнем носителе
Файл можно представить

как конечное количество последовательных байтов
Устройства, такие как дисплей, клавиатура, принтер,

можно рассматривать как частные случаи файлов

ФайлФайл – поименованная область на внешнем носителе Файл можно представить как конечное количество последовательных байтовУстройства, такие как

Слайд 3Поток (stream)
Поток – это абстрактное понятие, относящиеся к любому переносу

данных от источника к приёмнику
Поток определяется как последовательность байтов и

не зависит от конкретного устройства, с которым производится обмен
Поток (stream)Поток – это абстрактное понятие, относящиеся к любому переносу данных от источника к приёмникуПоток определяется как

Слайд 4Буфер
Для повышения скорости передачи данных обмен с потоком производится через

специальную область оперативной памяти – буфер
Буфер выделяется для каждого открытого

файла
При записи в файл данные направляются в буфер и там накапливаются, а затем происходит их передача на внешнее устройство
При чтении из файла данные вначале считываются в буфер (сколько помещается)
БуферДля повышения скорости передачи данных обмен с потоком производится через специальную область оперативной памяти – буферБуфер выделяется

Слайд 5Файлы по принципам работы делятся на:
Текстовые (возможен только последовательный доступ)
Содержимое

таких файлов пользователь может прочитать и отредактировать в текстовом редакторе
Двоичные

(возможен как последовательный, так и прямой доступ)
Интерпретация таких файлов возлагается на специализированные программные средства
Файлы по принципам  работы делятся на:Текстовые (возможен только последовательный доступ)	Содержимое таких файлов пользователь может прочитать и

Слайд 6Текстовые файлы:
Позволяют обрабатывать информацию только последовательно, от начала до конца
Новую

информацию можно добавлять только в конец файла

Текстовые файлы:Позволяют обрабатывать информацию только последовательно, от начала до концаНовую информацию можно добавлять только в конец файла

Слайд 7Двоичные файлы:
Для них можно использовать как последовательное чтение или запись,

так и режим прямого доступа к любой компоненте файла с

заданным номером
В режиме прямого доступа можно прочесть одну из компонент с любым номером, или изменить (перезаписать) компоненту с любым номером
Двоичные файлы:Для них можно использовать как последовательное чтение или запись, так и режим прямого доступа к любой

Слайд 8Текстовые файлы
Имеют расширение txt
Создать файл и записать в него информацию

можно заранее в текстовом редакторе
Текстовый файл может содержать как

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

Текстовые файлыИмеют расширение txtСоздать файл и записать в него информацию можно заранее в текстовом редакторе Текстовый файл

Слайд 9Открытие текстового файла для чтения:
ifstream F1;
F1.open("1.txt", ios::in | ios::nocreate );
if

(!F1) cout

ли файл

После удачного открытия файла (в любом режиме) в переменной F будет храниться true, в противном случае false. Это позволит проверить корректность операции открытия файла.
Открытие текстового файла для чтения:ifstream F1;F1.open(

Слайд 10Открытие текстового файла для записи:
ofstream F2;
F2.open("2.txt", ios::out );

Параметр mode может

отсутствовать, в этом случае файл открывается в режиме по умолчанию

для данного потока

Открытие текстового файла для записи:ofstream F2;F2.open(

Слайд 11Файл может открываться в следующих режимах:
В режиме чтения
В режиме

запись (перезапись)
В режиме добавления информации в конец файла

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

Слайд 12ios::in — открыть файл в режиме чтения данных; режим по

умолчанию для потоков ifstream;
ios::out — открыть файл в режиме записи

данных (при этом информация о существующем файле уничтожается); режим по умолчанию для потоков ofstream;
ios::app — открыть файл в режиме добавления данных в конец файла;
ios::ate — передвинуться в конец уже открытого файла;
ios::trunc — очистить файл, то же происходит в режиме ios::out;
ios::nocreate — не выполнять операцию открытия файла, если он не существует.
ios::in — открыть файл в режиме чтения данных; режим по умолчанию для потоков ifstream;ios::out — открыть файл

Слайд 13Закрытие файла
F1.close();

Эта функция удаляет связь файловой переменной с файлом на

диске и аналогична сохранению файла

Во избежание ошибок при работе

с файлами, для каждой процедуры открытия файла в программе должна присутствовать команда close
Закрытие файла	F1.close();Эта функция удаляет связь файловой переменной с файлом на диске и аналогична сохранению файла Во избежание

Слайд 14Запись данных в файл
После открытия файла в режиме записи будет

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

ofstream F2;
F2.open("2.txt",

ios::out );
char str[80];
сout<<"Введите строку";
cin>>str;
F2<F2.close();
Запись данных в файлПосле открытия файла в режиме записи будет создан пустой файл, в который можно будет

Слайд 15Чтение данных из файла
После открытия файла в режиме чтения можно

прочитать из него информацию

ifstream F1;
F1.open("1.txt", ios::in | ios::nocreate );
if (!F1)


{ cout<<"Ошибка открытия файла!";
return 0;
}
char str[80];
F1>>str; // прочитать все данные
сout<F1.close();

Чтение данных из файлаПосле открытия файла в режиме чтения можно прочитать из него информациюifstream F1;F1.open(

Слайд 16Чтение данных построчно
В текстовом файле обычно находится много строк, поэтому

чтение данных происходит в цикле
ifstream F1;
F1.open("1.txt", ios::in | ios::nocreate );
if

(!F1)
{ cout<<"Ошибка открытия файла!";
return 0;
}
char str[80];
while (!F1.eof()){
F1.getline(str, 80);
cout<F1.close();

Чтение данных построчноВ текстовом файле обычно находится много строк, поэтому чтение данных происходит в циклеifstream F1;F1.open(

Слайд 17Работа с текстовым файлом
Создание файла в редакторе
Объявления потока для чтения

(файловой переменной)
Открытие файла в режиме чтения
Обработка информации из файла посимвольно

или построчно в цикле
Вывод на экран всех данных или выборочно
Может быть запись измененной информации в конец файла или в другой файл (заранее открыть в режиме записи)
Закрытие всех файлов

Работа с текстовым файломСоздание файла в редактореОбъявления потока для чтения (файловой переменной)Открытие файла в режиме чтенияОбработка информации

Слайд 18Задача 1
Дан текстовый файл. Вывести на экран строки

из файла, начинающиеся с букву «Т».

Задача 1  Дан текстовый файл. Вывести на экран строки из файла, начинающиеся с букву «Т».

Слайд 19Сохранение файла

Сохранение файла

Слайд 20Математическая формулировка:
Открыть входной поток
Открыть исходный файл в режиме чтения
Считать информацию

построчно в цикле
В каждой считанной строке проверять первую букву
Если первая

буква 'Т', то выводить эту строку на экран
Математическая формулировка:Открыть входной потокОткрыть исходный файл в режиме чтенияСчитать информацию построчно в циклеВ каждой считанной строке проверять

Слайд 21Алгоритм

Алгоритм

Слайд 22Текст программы:
void main()
{ SetConsoleCP(1251);
SetConsoleOutputCP(1251);
char S[80];

ifstream F1;
F1.open("2.txt", ios::in);
while (!F.eof())

{ F.getline(S, 80);
if (S[0] == 'Т')
cout< }
F.close();
system("pause"); }
Текст программы:void main(){ SetConsoleCP(1251);  SetConsoleOutputCP(1251);  char S[80];  ifstream F1;  F1.open(

Слайд 23Результаты работы программы:

Результаты работы программы:

Слайд 24Задача 2
Дан текстовый файл. Определить, встречается ли в

файле заданное слово.

Задача 2  Дан текстовый файл. Определить, встречается ли в файле заданное слово.

Слайд 25Текст программы:
void main()
{ char word[80], str[80];
SetConsoleCP(1251);
SetConsoleOutputCP(1251);

coutword;
bool fl

= false;
ifstream F;
F.open("text.txt", ios::in);
Текст программы:void main(){ char word[80], str[80];  SetConsoleCP(1251);  SetConsoleOutputCP(1251);  coutword;  bool fl = false;

Слайд 26while (!F.eof())
{
F.getline(str, len);
cout

fl = true;
}
}
F.close();
if (fl)
cout

cout<<"Слово отсутствует в файле!"<}
while (!F.eof()){ 	F.getline(str, len);	cout

Слайд 27Результаты работы программы:

Результаты работы программы:

Слайд 28Задача 3
Дан текстовый файл. Строки, в которых встречается

заданное слово (слог), записать в другой файл.

Задача 3  Дан текстовый файл. Строки, в которых встречается заданное слово (слог), записать в другой файл.

Слайд 29Математическая формулировка:
Необходимо открыть входной поток и исходный файл в режиме

чтения
Заранее новый файл открывается для записи (он будет создан в

этом режиме)
Считать данные построчно в цикле
Проверить каждую строку и определить, встречается ли в ней заданное слово
Если слово присутствует, то записать эту строку в новый файл

Математическая формулировка:Необходимо открыть входной поток и исходный файл в режиме чтенияЗаранее новый файл открывается для записи (он

Слайд 30Алгоритм

Алгоритм

Слайд 31Текст программы:
ifstream F1;
F1.open("1.txt", ios::in);
ofstream F2;
F2.open("2.txt", ios::out);
while (!F1.eof())
{

F1.getline(str, 80);
if (strstr(str, word))
F2

Текст программы:ifstream F1; F1.open(

Слайд 32Результаты работы программы

Результаты работы программы

Слайд 33Задача 4
Дан текстовый файл. Строки, в которых встречается больше 2

букв ‘н’, записать в другой файл.

Задача 4Дан текстовый файл. Строки, в которых встречается больше 2 букв ‘н’, записать в другой файл.

Слайд 34Алгоритм

Алгоритм

Слайд 35ifstream F1;
F1.open("1.txt", ios::in);
ofstream F2;
F2.open("2.txt", ios::out);
while (!F1.eof())
{
F1.getline(str,

80);
i = 0; k = 0;
while (str[i])
{

if (str[i++] == 'н') k++;
}
if (k>2)
F2<}
F1.close(); F2.close();

Текст программы:


Слайд 36Задача 5
Создать текстовый файл, внести в него 10 целых чисел,

каждое через один пробел. Прочитать эти данные в одномерный массив

и вывести его на экран. Найти сумму элементов массива.
Задача 5	Создать текстовый файл, внести в него 10 целых чисел, каждое через один пробел. Прочитать эти данные

Слайд 38Результаты работы программы

Результаты работы программы

Слайд 39Задача
Создать два текстовых файла, внести в них по 5 строк.

Разработать программу для получения результирующего файла, в котором будут чередоваться

строки из 1-го и 2-го файла.

Домашнее задание

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

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика