介绍使用C/C++的标准库函数读写二进制文件的方法。
工具/原料
C/C++
方法/步骤
1
首先我们需要添加引用。文件读写在stdio.h,文件信息获取在sys\stat.h
2
第一步,使用scanf函数,从键盘输入文件名,读取到fileName字符串。使用FILE结构体f来存储fopen的返回值。fopen的第二个值是字符串'rb'表示read binary,读取二进制。
3
接着if判断以下文件打开是否成功。如果打开失败fopen会返回空指针NULL
4
接着定义stat类型结构体info,用来存储文件信息。使用stat(文件名,stat结构体指针)来获取文件信息。常用信息包括创建时间,访问时间,文件大小(精确到字节)等。
5
使用fread函数来读取文件内容。第一个参数是指向缓冲区的指针(rawData = (..)malloc(info.st_size);)第二个参数是数据类型,第三个参数是数据个数。按照unsigned char读取info.st_size个,即一次读完整个文件到rawData数组。
6
如果要写入文件,只需要按照'wb'打开,即write binary写二进制方式打开,使用fwrite函数即可写入数据。用法类似不再赘述。
注意事项
如果可以使用stat(文件名,文件信息结构体)获取文件长度就不要用fseek,后者会遍历整个文件,极慢。
下一篇:绶带的正确佩戴方式