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;
}

代码说明:

  1. 该程序首先打开名为 'data.txt' 的文件。
  2. 使用 f_gets 函数逐行读取文件内容。
  3. 对于每行数据,使用 sscanf 函数解析其中的数字。
  4. 如果解析成功,则打印数字并跳过数字部分,否则跳过当前字符。
  5. 循环读取所有行,直到文件结束。
  6. 最后关闭文件。

示例:

假设 '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' 需要存在于程序运行目录下。
C语言使用 FATFS 读取以空格或换行符分割的数字文件

原文地址: https://www.cveoy.top/t/topic/nW1o 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录