Содержание
- 2. Файлы по принципам работы делятся на: Текстовые Двоичные
- 3. Текстовые файлы Позволяют обрабатывать информацию последовательно, от начала до конца Новую информацию можно добавлять только в
- 4. Бинарные (двоичные) файлы Интерпретация таких файлов возлагается на специализированные программные средства Это файлы, в которых информация
- 5. Двоичные файлы Имеют расширения dat, bin, db Обрабатываются по компонентам Имеют как последовательный, так и прямой
- 6. Открытие двоичного файла для чтения : ifstream fs; fs.open("file.dat", ios::binary | ios::in | ios::nocreate ); if
- 7. Открытие двоичного файла для записи: ofstream fs; fs.open("file.dat", ios::binary); Эта команда «перематывает» файл в начало со
- 8. Режимы открытия двоичного файла в языке Си: Чтения (режим rb) Запись (режим wb) Чтения и записи
- 9. Пример: FILE *f1; f1 = fopen("file1.bin","rb"); с проверкой открытия: FILE *f1; if ((f1 = fopen("file1.bin","rb"))==NULL) {
- 10. Режимы открытия двоичного файла в языке С++: Чтения (ios::in) Запись (ios::out) Чтения и записи (ios::in |
- 11. Запись в двоичный файл осуществляется по одной компоненте: ofstream fs; fs.open("file.dat", ios::binary | ios::out); temp =
- 12. Чтение из двоичного файла Осуществляется по одной компоненте: ifstream ifs; ifs.open("file.dat", ios::binary | ios::in); ifs.read((char *)&temp,
- 13. Можно считывать двоичный файл последовательно: ifstream ifs; ifs.open("file.dat", ios::binary | ios::in); while (!ifs.eof()) { ifs.read((char *)&temp,
- 14. Режим прямого доступа для двоичных файлов fs.fseek(n*sizeof(x), fs.beg); n – номер компоненты, на которую надо настроить
- 15. Чтение компоненты с заданным номером: int i, temp; ifstream ifs; ifs.open("file.dat", ios::binary | ios::in | ios::out
- 16. Запись данных с заданной позиции: int i, temp = 100; ifstream ifs; ifs.open("file.dat", ios::binary | ios::in
- 17. Работа с двоичным файлом Открытие файла для записи, создание файла в программе Запись в файл компонент
- 18. Открытие файла структур: struct Tovar { char name[40]; float pay; } void main() { ifstream fs;
- 19. Чтение и выборка данных: Tovar T = new Tovar(); while (! fs.eof()) { ifs.read((char *)&T, sizeof(T));
- 20. Задача 1 Заполнить бинарный файл случайными целыми числами. Подсчитать количество четных по значениям чисел и какой
- 21. Математическая формулировка: Необходимо открыть исходный файл для записи и заполнить его целыми числами при помощи генератора
- 22. Алгоритм
- 23. Текст программы: void main() { srand(time(NULL)); int x; ofstream F; F.open("file.dat", ios::binary); for (int i=0; i
- 24. Окончание программы: int k = 0; ifstream F1; F1.open("file.dat", ios::binary | ios::in | ios::out ); while
- 25. Задача 2 Заполнить бинарный файл числами, вводимыми с клавиатуры. Количество компонент файла задать по желанию пользователя.
- 26. Алгоритм
- 27. Текст программы: void main() { int y, n; ofstream F1; F1.open("file.dat", ios::binary); cout cin>>n; for (int
- 28. ifstream F2; F2.open("file.dat", ios::binary | ios::in | ios::out ); for (int i=0; i F2.read((char *)&y, sizeof(int));
- 30. Скачать презентацию