c语言读取csv文件到数组
作者:野牛程序员:2023-07-04 18:29:30C语言阅读 3244
在C语言中,可以使用标准库函数来读取CSV文件并将其内容存储到数组中。下面是一个基本的示例代码,可以实现这个功能:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_ROWS 100
#define MAX_COLS 100
#define MAX_LINE_LENGTH 1000
int main() {
FILE *file;
char line[MAX_LINE_LENGTH];
char *token;
char *ptr;
int row = 0, col = 0;
double data[MAX_ROWS][MAX_COLS];
file = fopen("data.csv", "r");
if (file == NULL) {
printf("无法打开文件\\n");
return 1;
}
while (fgets(line, sizeof(line), file) && row < MAX_ROWS) {
col = 0;
token = strtok(line, ",");
while (token != NULL && col < MAX_COLS) {
data[row][col] = strtod(token, &ptr);
token = strtok(NULL, ",");
col++;
}
row++;
}
fclose(file);
// 打印读取的数据
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
printf("%lf ", data[i][j]);
}
printf("\\n");
}
return 0;
}请注意,上述代码假设CSV文件中的每个单元格都是一个浮点数,并且每行中的列数相同。你可以根据自己的需求进行修改和扩展。
此代码使用fopen函数打开名为"data.csv"的CSV文件,然后逐行读取文件内容。每行使用strtok函数按逗号分隔,将每个分隔符之间的字符串转换为浮点数,并将其存储在data数组中的相应位置。最后,它打印读取的数据。
记得在运行代码之前,将"data.csv"替换为你实际使用的CSV文件的路径。另外,需要注意确保CSV文件的格式与代码中的假设相匹配,否则可能会导致意外的结果。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:C++如何将字符串转化为字符数组
- 下一篇:CPU处理器系列
