C言語でCSVファイルのデータを読み込む方法は何ですか?

CSVファイルのデータをC言語で読み取るには、以下の手順に従うことができます:

  1. 必要なヘッダーファイルをインポートしてください。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
  1. CSVファイルの各行データを保存するための構造体を定義します。
typedef struct {
    char field1[100];
    char field2[100];
    // 可以根据需要添加更多的字段
} CSVData;
  1. 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);
}
  1. 上記の関数を呼び出して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ファイルの各行には2つのフィールドしかないという前提で、必要に応じて調整してください。さらに、CSVファイルが存在し、正しい形式であることを確認してください。

bannerAds