C语言实现二进制文件读写
C语言提供了丰富的文件操作函数,可以实现对二进制文件的读写功能。下面是一个简单的示例,展示了如何使用C语言读取和写入二进制文件。
1.打开文件
要读取或写入二进制文件,首先需要使用fopen函数打开文件。该函数的原型如下:
```c
FILE* fopen(const char* filename, const char* mode);
```
其中,`filename`是要打开的文件的路径和名称,`mode`指定文件打开模式。
对于读取二进制文件,可以使用"rb"模式打开文件:
```c
FILE* file = fopen("example.bin", "rb");
```
对于写入二进制文件,可以使用"wb"模式打开文件:
fopen函数失败```c
FILE* file = fopen("example.bin", "wb");
```
2.读取文件
读取二进制文件的一个常见方法是使用fread函数。该函数的原型如下:
```c
size_t fread(void* ptr, size_t size, size_t count, FILE* file);
```
其中,`ptr`是一个指向用于存储读取数据的缓冲区的指针,`size`是每个数据项的大小(以字节为单位),`count`是要读取的数据项的数量,`file`是要读取的文件指针。
以下示例展示了如何读取一个保存了整数数组的二进制文件:
```c
#include <stdio.h>
int mai
FILE* file = fopen("example.bin", "rb");
if (file == NULL)
printf("文件打开失败!");
return 1;
}
int data[5];
fread(data, sizeof(int), 5, file);
for (int i = 0; i < 5; i++)
printf("%d\n", data[i]);
}
fclose(file);
return 0;
```
3.写入文件
写入二进制文件的一个常见方法是使用fwrite函数。该函数的原型如下:
```c
size_t fwrite(const void* ptr, size_t size, size_t count, FILE* file);
```
其中,`ptr`是一个指向包含要写入的数据的缓冲区的指针,`size`是每个数据项的大小(以字节为单位),`count`是要写入的数据项的数量,`file`是要写入的文件指针。
以下示例展示了如何将整数数组写入二进制文件:
```c
#include <stdio.h>
int mai
FILE* file = fopen("example.bin", "wb");
if (file == NULL)
printf("文件打开失败!");
return 1;
}
int data[5] = {1, 2, 3, 4, 5};
fwrite(data, sizeof(int), 5, file);
fclose(file);
return 0;
```
上述示例是一个基本的二进制文件读写示例,但在实际应用中可能会有更复杂的需求。可以根据实际情况来灵活运用文件操作函数,满足具体的读写要求。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。