Each line of the csv file has a semicolon; Separated,
so we just need to read line by line, and then cut according to the semicolon to get the cell content.
#include <stdio.h> #include <stdlib.h> #include <string.h> const char* getfield(char* line, int num) { const char* tok; for (tok = strtok(line, ";"); tok && *tok; tok = strtok(NULL, ";\n")) { if (!--num) return tok; } return NULL; } int main() { FILE* stream = fopen("test.csv", "r"); char line[1024]; int linecount = 0; while (fgets(line, 1024, stream)) // Read line by line { linecount++ char* tmp = strdup(line); printf("the text of %d row, 3 col is %s\n", getfield(tmp, 3)); free(tmp); } }Soural.www:ecutturi.com