Как создавать бинарные файлы, какой программой это осуществляется? - C (СИ)
Формулировка задачи:
Всем привет.
Как создавать бинарные файлы, какой программой это осуществляется, и как читать их, т.е. читать так же, как текстовые файлы в блокноте? Или такой программы просто не существует?
Нужно создать бинарный файл состоящий из n вещественных массивов по 6 элементов в каждом, расположенных по одному в каждой строке.
Спасибо.
Решение задачи: «Как создавать бинарные файлы, какой программой это осуществляется?»
textual
Листинг программы
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
float m[6];
FILE *f;
int i;
if(!(f=fopen("float.bin","wb")))
{
puts("File not opened");
exit(1);
}
puts("Zapis' v faile:");
for(i=0;i<6;i++)
{
scanf("%f",&m[i]);
fwrite(&m[i],sizeof(float),1,f);
}
fseek(f,0,0);
puts("\nSozdanie faila:");
for(i=0;i<6;i++)
{
fread(&m[i],sizeof(float),1,f);
printf("%f ",m[i]);
}
fclose(f);
getch();
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек: iostream.h, conio.h, stdlib.h, string.h
- Объявление переменных:
- m - массив из 6 элементов типа float
- f - указатель на файл
- i - счетчик
- Открытие файла
float.binв режиме записи (wb) - Проверка успешности открытия файла. Если файл не открылся, выводится сообщение об ошибке и программа завершается.
- Вывод сообщения
Zapis' v faile:и считывание 6 чисел с помощью функции scanf в массив m - Запись каждого числа из массива m в файл с помощью функции fwrite
- Переход в начало файла с помощью функции fseek
- Вывод сообщения
Sozdanie faila:и чтение чисел из файла с помощью функции fread - Вывод каждого числа из массива m с помощью функции printf
- Закрытие файла с помощью функции fclose
- Ожидание нажатия клавиши с помощью функции getch
- Возвращение значения 0, что означает успешное завершение программы