如何创建一个二进制文件?用C语言调用.

来源:百度知道 编辑:UC知道 时间:2024/06/07 03:16:39
我想用C语言的文件操作来打开一个二进制文件,要怎么做呢?
我的主要问题是如何创建这个二进制文件?
直接新建一个TXT文件的话,保存类型选ASCII型,找不到二进制的编码来保存?有什么解决方法吗?
用fopen "wb"形式建立二进制文件后,如何往该文件写入二进制数据呢? 例如写入1000011010011

所有文件都可以看成二进制型的
用f1=fopen("bbb.txt","wb");
来创建,和"w"区别在于
打印"\n"时
"w"是2字节,0x0d 0x0a
而"wb"是1字节,0x0a

二进制数据这样写入
比如是个int a;
fwrite(&a,sizeof(int),1,f1);
数组就不用加&了

只是创建一个二进制文件,可以通过文件打开关闭的方式实现,即

FILE *fp;
fp = fopen(FILE_NAME, "wb");
fclose(fp);
这样一个名字为FILE_NAME值的二进制文件就创建了。
不过这样创建的二进制文件是空的,里面没有数据,从表象上看,就是文件大小为0。

所以在fopen后,可以向其中写需要的数据,即
fwrite(str, size_per_time, times, fp);
实现向文件写入的操作,即从str开始,写入times次,每次size_per_time字节的数据。
实际效果为写入从str开始,共计size_per_time * times字节的数据。