c语言怎么读取csv文件数据

   2025-01-31 6450
核心提示:要在C语言中读取CSV文件的数据,可以按照以下步骤进行:引入所需的头文件:#include stdio.h#include stdlib.h#include string.h

要在C语言中读取CSV文件的数据,可以按照以下步骤进行:

引入所需的头文件:
#include <stdio.h>#include <stdlib.h>#include <string.h>
定义一个结构体来存储CSV文件中的每一行数据:
typedef struct {    char field1[100];    char field2[100];    // 可以根据需要添加更多的字段} CSVData;
编写函数来读取CSV文件的数据:
void readCSV(const char* filename, CSVData* data, int* num_rows) {    FILE* file = fopen(filename, "r");    if (file == NULL) {        printf("无法打开文件。\n");        return;    }    char line[256];    int i = 0;    while (fgets(line, sizeof(line), file)) {        // 使用strtok函数按照逗号分隔每个字段        char* token = strtok(line, ",");        strcpy(data[i].field1, token);        token = strtok(NULL, ",");        strcpy(data[i].field2, token);        // 可以根据需要继续读取更多的字段        i++;    }    *num_rows = i;    fclose(file);}
调用上述函数来读取CSV文件的数据:
int main() {    CSVData data[100];    int num_rows;    readCSV("data.csv", data, &num_rows);    // 打印读取到的数据    for (int i = 0; i < num_rows; i++) {        printf("第 %d 行数据:\n", i+1);        printf("字段1:%s\n", data[i].field1);        printf("字段2:%s\n", data[i].field2);        // 可以根据需要打印更多的字段        printf("\n");    }    return 0;}

以上代码假设CSV文件中每行只有两个字段,可以根据实际情况进行调整。另外,需要确保CSV文件存在且格式正确。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言