C语言使用 FATFS 读取以空格或换行符分割的数字文件
C语言使用 FATFS 读取以空格或换行符分割的数字文件
本文提供一个简单的 C 语言代码示例,使用 FATFS 库读取以空格或换行符分割的数字文件,并将其打印出来。代码使用 f_open 打开文件,f_gets 逐行读取文件内容,并使用 sscanf 解析数字。
#include "ff.h"
#include <stdio.h>
#define FILENAME 'data.txt'
int main(void)
{
FIL file;
FRESULT res;
UINT br;
// 打开文件
res = f_open(&file, FILENAME, FA_READ);
if (res != FR_OK) {
printf("Failed to open file, error %d\n", res);
return 1;
}
// 读取文件内容并输出数字
char buf[32];
int num;
while (f_gets(buf, sizeof(buf), &file)) {
char *p = buf;
while (*p) {
// 读取一个数字
if (sscanf(p, "%d", &num) == 1) {
printf("%d ", num);
// 跳过数字部分
while (*p && (*p >= '0' && *p <= '9')) {
p++;
}
} else {
// 跳过非数字部分
p++;
}
}
}
// 关闭文件
f_close(&file);
return 0;
}
代码说明:
- 该程序首先打开名为 'data.txt' 的文件。
- 使用
f_gets函数逐行读取文件内容。 - 对于每行数据,使用
sscanf函数解析其中的数字。 - 如果解析成功,则打印数字并跳过数字部分,否则跳过当前字符。
- 循环读取所有行,直到文件结束。
- 最后关闭文件。
示例:
假设 'data.txt' 文件内容如下:
12 34 56
78 90
1 2 3 4 5
运行程序后,输出结果为:
12 34 56 78 90 1 2 3 4 5
注意:
- 该代码示例仅供参考,实际应用中可能需要根据具体情况进行调整。
- 确保已经正确安装并配置 FATFS 库。
- 文件 'data.txt' 需要存在于程序运行目录下。
原文地址: https://www.cveoy.top/t/topic/nW1o 著作权归作者所有。请勿转载和采集!