C语言怎么将存储到文件中的数据读取出来
时间: 2024-03-21 13:43:51 浏览: 52
在C语言中,我们可以使用`fread`函数从文件中读取二进制数据,使用`fgets`函数从文件中读取文本数据。
`fread`函数的使用方法如下:
```c
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
```
其中,`ptr`是指向要读取数据存储位置的指针;`size`是每个数据块的大小,以字节为单位;`count`是要读取的数据块数量;`stream`是指向文件的指针。
例如,要从一个名为`data.bin`的二进制文件中读取10个整数,可以使用以下代码:
```c
FILE *fp = fopen("data.bin", "rb");
int data[10];
fread(data, sizeof(int), 10, fp);
fclose(fp);
```
这将从`data.bin`文件中读取10个整数,并将它们存储到`data`数组中。
`fgets`函数的使用方法如下:
```c
char *fgets(char *str, int n, FILE *stream);
```
其中,`str`是指向存储读取数据的字符串的指针;`n`是最大读取字符数,包括终止符`\0`;`stream`是指向文件的指针。
例如,要从一个名为`data.txt`的文本文件中读取一行数据,可以使用以下代码:
```c
FILE *fp = fopen("data.txt", "r");
char buffer[256];
fgets(buffer, 256, fp);
fclose(fp);
```
这将从`data.txt`文件中读取一行数据,并将它存储到`buffer`数组中。注意,`fgets`函数会将读取到的终止符`\n`也存储到字符串中。如果文件中没有一整行数据,`fgets`函数将读取部分数据,并在读取到`n-1`个字符或遇到终止符`\n`时停止。
阅读全文