fread循环读文本
时间: 2023-09-23 13:10:17 浏览: 147
批处理,实现循环读取文本文件,每行内容作为文件夹名称,自动创建文件夹
4星 · 用户满意度95%
您可以使用`fread`函数配合循环来读取文本文件。`fread`函数是C语言中用于读取二进制数据的函数,但也可以用于读取文本文件。
下面是一个示例代码,演示了如何使用`fread`循环读取文本文件中的内容:
```c
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "r");
if (file == NULL) {
printf("无法打开文件\n");
return 1;
}
char buffer[100]; // 缓冲区大小
size_t count; // 每次读取的字节数
while ((count = fread(buffer, sizeof(char), sizeof(buffer) - 1, file)) > 0) {
buffer[count] = '\0'; // 添加字符串结束符
printf("%s", buffer); // 输出读取的内容
}
fclose(file);
return 0;
}
```
在上面的示例代码中,我们首先使用`fopen`函数打开一个名为"example.txt"的文本文件,并指定以只读模式打开。然后,我们设置一个缓冲区数组`buffer`,并使用`fread`函数循环读取文件内容。
`fread`函数的第一个参数指定要读取数据存储的地址,第二个参数指定每个元素的大小(这里是字符的大小),第三个参数指定要读取的元素数量(这里是缓冲区的大小减去1),最后一个参数是文件指针。
`fread`函数返回成功读取的元素数量,当返回值为0时表示已到达文件末尾。
在每次循环中,我们将读取的内容存储在缓冲区`buffer`中,并在输出前加上字符串结束符`\0`。
最后,我们使用`fclose`函数关闭文件。
请注意,上述代码假设文本文件以ASCII字符编码,并且每一行不超过缓冲区大小。如果需要处理更复杂的字符编码或更大的文件,请根据实际情况修改代码。
阅读全文