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


Робота з файлами

Содержание

Відкриття/ закриття файлівFILE *p1,*p2;p1=fopen(“шлях_до_файлу”,”режим”); ”c:\\test\\ish.dan”Режими:r rb r+ rb+ w wb w+ wb+ a ab a+ ab+ fclose(p1);

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

Слайд 1Робота з файлами
Тема 11

Робота з файламиТема 11

Слайд 2Відкриття/ закриття файлів
FILE *p1,*p2;
p1=fopen(“шлях_до_файлу”,”режим”);
”c:\\test\\ish.dan”
Режими:
r rb r+ rb+
w wb w+ wb+
a ab a+ ab+
fclose(p1);

Відкриття/ закриття файлівFILE *p1,*p2;p1=fopen(“шлях_до_файлу”,”режим”);	”c:\\test\\ish.dan”Режими:r		rb	r+  rb+	w		wb	w+  wb+	a		ab	a+  ab+	fclose(p1);

Слайд 3Форматне введення/виведення
fscanf(p1,”формати”, адреси змінних);

fprintf(p2,”шаблон”,список змінних);

fputs(”рядок”, p2);

Форматне введення/виведенняfscanf(p1,”формати”, адреси змінних);fprintf(p2,”шаблон”,список змінних);fputs(”рядок”, p2);

Слайд 4Послідовний доступ
Читання/запис – покажчик здвигається на 1 елемент.
rewind(p1); - показчик

в початок
Приклад.
В файлі записано матрицю розміром 2х3. Скласти

програму, яка знаходить мінімальний елемент матриці. Результат дописати в файл.
Послідовний доступЧитання/запис – покажчик здвигається на 1 елемент.rewind(p1); - показчик в початокПриклад.  В файлі записано матрицю

Слайд 5Прямий доступ
Позиціонування
fseek(p1,зсув, початок)
Константи початку:
0 – від початку файлу
1 –

від поточної позиції
2 – від кінця
fseek(p1,2l,0);

Прямий доступПозиціонування fseek(p1,зсув, початок)Константи початку:0 – від початку файлу1 – від поточної позиції2 – від кінцяfseek(p1,2l,0);

Слайд 6Прямий доступ
Визначення позиції
m=ftell(p1)
Приклад. У файлі записано рядок:
21.5 -12.6
fseеk(p1,0l,0)

-> 21.5
fseеk(p1,1l,0) -> 1.5
fseеk(p1,2l,0) -> 0.5
fseеk(p1,3l,0) ->

5
fseеk(p1,4l,0) -> -12.6
Прямий доступВизначення позиціїm=ftell(p1)Приклад. У файлі записано рядок:21.5  -12.6 fseеk(p1,0l,0) -> 21.5 fseеk(p1,1l,0) -> 1.5 fseеk(p1,2l,0) ->

Слайд 7Введення/виведення бінарних файлів стандартними засобами
fread(покажчик рез-ту, розмір ел-та, кільк-сть ел-тів,

покажчик файлу)
fwrite(покажчик виведення інф, розмір ел-та, кільк-сть ел-тів, покажчик файлу)

Введення/виведення бінарних файлів стандартними засобамиfread(покажчик рез-ту, розмір ел-та, кільк-сть ел-тів, покажчик файлу)fwrite(покажчик виведення інф, розмір ел-та, кільк-сть

Слайд 8Файл як потік
Потоки для роботи з файлами створюються як об’єкти

класів:

ofstream - для виведення (запису) даних в файл;
ifstream -

для ввведення (читання) даних з файла;
fstream - для читання та для запису даних (двунаправлений обмін).
Файл як потікПотоки для роботи з файлами створюються як об’єкти класів:ofstream - для виведення (запису) даних в

Слайд 9Файл як потік
Файловий потік створюється шляхом підключення до конкретного файла

шляхом використання функції open(), яка наслідується файловими класами ofstream, ifsream,

fstream
Її синтаксис:
void open(const char *fileName,
int mode = умалчиваемое_значение,
int protection = умалчиваемое_значение);
Файл як потікФайловий потік створюється шляхом підключення до конкретного файла шляхом використання функції open(), яка наслідується файловими

Слайд 10Файл як потік
Mode - флаг, який визначає режим роботи з

файлом:

enum ios::open_mode {
in = 0x01, //

Открыть только для чтения.
out = 0x02, // Открыть только для записи.
ate = 0x04, // При открытии искать конец файла.
арр = 0x08, // Дописывать данные в конец файла.
trunc = 0x10, // Вместо существующего создать новый файл.
nocreate = 0x20, // Не открывать новый файл (Для
// несуществующего файла функция open выдаст ошибку).
noreplace = 0x40, // Не открывать существующий файл.
// (Для существующего выходного файла, не имеющего режимов ate
// или арр, выдать ошибку).
binary = 0x80 // Открыть для двоичного (не текстового) обмена.
};
Файл як потікMode - флаг, який визначає режим роботи з файлом:enum ios::open_mode { in

Слайд 11Файл як поток
#include
ifstream ofstream
Флаги стану (методи об'єктів)
eof() – кінець файлу
bad() –

помилкова операція
fail() – помилкова операція або не може бути виконана
good()

– всі операції виконуються
Файл як поток#include	ifstream		ofstreamФлаги стану (методи об'єктів)eof() – кінець файлуbad() – помилкова операціяfail() – помилкова операція або не

Слайд 12Файл введення
ifstream fin(“test.dan”);
fin >>x;
fin.get(); - повертає символ (в т.ч. EOF)
fin.get(k);

- повертає покажчик на потік (fin)
fin.getline(char []; razmer);
fin.ignore(кіл-ть, символ_роздільник) –

пропустити частину рядка
fin.ignore(30,’\n’);
Файл введенняifstream fin(“test.dan”);fin >>x;fin.get(); - повертає символ (в т.ч. EOF)fin.get(k); - повертає покажчик на потік (fin)fin.getline(char [];

Слайд 13Файл виведення
ofstream fout(“ім’я_файлу”,режим);
ios::app
ios::ate
ios::trunc (за замовчуванням)
ios::nocreate
fout

Файл виведенняofstream fout(“ім’я_файлу”,режим);ios::appios::ateios::trunc (за замовчуванням)ios::nocreatefout

Слайд 14Двійкові файли
ifstream f1(“ім’я_файлу”,ios::binary);
ofstream f2(“ім’я_файлу”, ios::binary);

f1.read((char*) адреса_змінної, sizeof (змінна))
f2.write((char*) адреса_змінної, sizeof

(змінна))

Двійкові файлиifstream f1(“ім’я_файлу”,ios::binary);ofstream f2(“ім’я_файлу”, ios::binary);f1.read((char*) адреса_змінної, sizeof (змінна))f2.write((char*) адреса_змінної, sizeof (змінна))

Слайд 15Двійкові файли
ofstream os("text.txt", ios::binary); int a[] = { 1492, 31562,

290893,382 }; os.write((char*)a,sizeof (a));
ifstream is("text.txt", ios::binary); int b[4]; is.read((char*)(b),sizeof(b));

is.close();
Двійкові файлиofstream os(

Слайд 16Приклад
#include
#include
void main()
{
clrscr(); float x=12.89;
ofstream fout("ggg",ios::binary);
fout.write((char *)&x, sizeof (x));
fout.close();

Приклад#include#include void main(){clrscr(); float x=12.89;ofstream fout(

Слайд 17Приклад
float x=9.3;
ifstream fin("ggg",ios::binary);
fin.read((char *)&x, sizeof (x));
cout

Прикладfloat x=9.3;ifstream fin(

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

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

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

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

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


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

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