Linux系统中,在编译器中完成读取csv文件某一列的操作
时间: 2023-06-26 20:04:02 浏览: 129
linux c++csv文件读写
在Linux系统中,可以使用C语言的标准库中的fopen、fgets、sscanf等函数来读取csv文件某一列的数据。
示例代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
FILE *fp;
char line[1024];
char *token;
char *column_data;
// 打开csv文件
fp = fopen("data.csv", "r");
if (fp == NULL) {
printf("Unable to open file\n");
exit(1);
}
// 读取csv文件每一行并获取指定列的数据
while (fgets(line, 1024, fp)) {
// 使用strtok函数分割每一行的数据
token = strtok(line, ",");
int column_number = 2; // 获取第3列的数据
int count = 0;
while (token != NULL) {
if (count == column_number) {
// 获取指定列的数据
column_data = token;
printf("%s\n", column_data);
break;
}
token = strtok(NULL, ",");
count++;
}
}
// 关闭文件
fclose(fp);
return 0;
}
```
上述代码中使用了strtok函数来分割每一行的数据,并通过计数器和指定列号来获取指定列的数据。
阅读全文