Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 9 лет назад пользователемГеоргий Батюньков
1 Файлові операції у С++ Максименко Марина Миколаївна вчитель інформатики вищої категорії, вчитель- методист Конотопської гімназії Конотопської міської ради Сумської області 2008 р.
2 Зміст Основні поняття Зчитування даних із файлу Визначення кінця файлу. Закриття файлу Виведення даних у файл Ознаки Приклади Обробка помилок при виконанні файлових операцій Обробка помилок Завдання Приклади використання файлових операцій Приклади Завдання Література
3 Основні поняття Файл - це сукупність даних, які розміщені на зовнішніх носіях. Дані у файлах називаються елементами Кількість даних під час опрацювання файлів не зазначають. Файли можуть містить як текстову, так і числову інформацію. Функцції опрацювання файлів описані в бібліотеці fstream.h Для опрацювання файлу його необхідно відкрити, виконати потрібні дії та закрити.
4 Зчитування даних із файлу Оголошення файлової змінної та відкриття файлу для читання: ifstream f_in(filename.txt, ознака1|ознака2|…|ознакаN); f_in – назва файлової змінної filename.txt – зовнішня назва файлу Ознаки слугують для визначення прав доступу до файлу. Ознаки зазначать необов'язково. Введення даних: f_in>>a>>b; //числова змінна, рядкова змінна без пропусків f_in.getline(str); //рядкова змінна
5 Визначення кінця файлу. Закриття файлу Для успішного читання довільних файлів потрібно знати, коли зустрінеться кінець файлу: while (!f_in.eof()) {//оператори} Функція name.eof() повертає нульове значення, якщо досягнуто кінця файлу. Коли для продовження роботи файл більше не потрібен, його слід закрити: f_in.close();
6 Виведення даних у файл Оголошення файлової змінної та відкриття файлу для запису: ofstream f_out(filename.txt, ознака1|ознака2|…|ознакаN); f_out – назва файлової змінної filename.txt – зовнішня назва файлу Ознаки слугують для визначення прав доступу до файлу. Ознаки зазначать необов'язково. Виведення даних: f_out>>a>>b; //числова змінна, рядкова змінна Увага! Якщо не використовувати ознаки, на диску буде створений новий файл із зазначеним ім'ям, або перезаписаний файл із таким же ім'ям, якщо він уже існує
7 Ознаки ОзнакаПризначення ios::in Відкриває файл для читання. Вміст файлу зберігається ios::out Відкриває файл для записування. Якщо файл не існує, то буде створений ios::app Відкриває файл для дописування. Дані будуть записані у кінець файлу ios::trunk Якщо файл, який відкривають для записування вже існує, то його вміст буде вилучено. ios::nocreate Забороняє створювати файл, який відкривають ios::inoreplace Забороняє перезаписувати існуючий файл
8 Ознаки (приклади) ofstream flags(text1.dat, ios::app); - можна дописати до кінця вже існуючого файлу потрібну інформацію ofstream flags(text1.dat, ios::noreplace); - якщо файл існує і спробувати щось записати у нього, то жодних дій не відбудеться; якщо ж цю ознаку застосувати до нового файлу, то файл буде створено і дані можна буде записувати ofstream flags(text1.dat, ios::nocreate); - якщо файл вже існує, то він може бути відкритий для записування; якщо ж раніше такого файлу на диску не було, то в кращому випадку у файл нічого не запишеться, а в гіршому – програма зависне.
9
Приклади Записати у файл три рядки тексту #include #include int main() {ofstream fout(output.txt); fout<
10
Приклади (продовження) Читати вміст файлу поки не буде досягнутий кінець файлу: #include #include #include int main() {ifstream fin(output.txt); char line[64]; while (!fin.eof()) { fin.getline(line,sizeof(line)); cout<
11
Обробка помилок при виконанні файлових операцій Щоб допомогти програмам стежити за помилками, використовується функція name.fail(). Якщо у процесі файлової операції помилок не було, функція поверне false (0). Однак, якщо трапилася помилка, функція поверне true. Наприклад: #include #include int main() {char line[64]; ifstream fin(output.txt); if(fin.fail()) cout<
12 Завдання 1. У текстовому редакторі створіть файл, й який занесіть прізвища п'яти ваших друзів. Складіть програму, яка б додавала інформацію ще про трьох осіб. Вміст файлу виведіть на екран. 2. У текстовому редакторі створіть файл, у який занесіть координати вершин трикутника. Обчисліть його периметр.
13
Приклади використання файлових операцій Зчитати масив. Обчислити суму його додатних елементів #include int main() { ifstream fin(input.txt); if (fin.fail()) {cout<
14
Приклади використання файлових операцій Написати програму, яка визначає, чи зустрічається у заданому файлі послідовність символів. Довжина рядку тексту не перевищує 80 символів, текст не містить переносів, послідовність не містить пропусків. #include int main() { const int len=81; char word[len], line[len]; cout >word; ifstream fin(text.txt, ios::nocreate); if (fine.fail()) {cout<
15 Завдання 1. Створити текстовий файл, що складається з одного рядка та містить слова, розділені символом пробілу. Написати програму для підрахунку кількості слів у файлі. 2. Створити програму для записування у текстовий файл додатних цілих чисел, що вказуються користувачем з клавіатури. Критерієм припинення введення має бути введення від'ємного числа. Відкрити створений файл, прочитати з нього числа та знайти їх суму. 3. Кожен рядок текстового файлу складається з однакової кількості символів. У записі рядка використовуються лише два символи – + та *. Написати програму для виведення на екран номера рядка та номера стовпця кожного символу +. Вважати, що нумерація рядків та стовпців починається з нуля.
16 Література Лєхан С.Ф. Інформатика С++. Спецкурс класи. – Шепетівка; Аспект, Глинський Я.М., Анохін В.Є., Ряжська В.А. С++ і С++ Builder. Навчальний посібник. – Львів: СПД Глинський, Глушаков С.В., Смирнов С.В., Коваль А.В. Практикум по С++. – Харьков: Фолио, Павловская Т.А. С/С++. Программирование на языке высокого уровня. – СПб.: Питер, 2003 Лисенко Т.І. Поглиблене вивчення програмування в школі. – К.:ТОВ Редакція Комп'ютер, 2007.
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.