gpt4 book ai didi

c++ - cplusplus 导入 csv 不识别第一列?

转载 作者:行者123 更新时间:2023-11-30 02:48:14 30 4
gpt4 key购买 nike

我正在尝试将一个 csv 文件导入到我的 C++ 程序中,但我遇到了一些问题,希望得到一些说明。

csv 文件中的数据排列如下。如您所见,我要导入 12 个单元格。

x, y, z, p
1, 2, 3, 4
5, 6, 7, 8

我导入所述 csv 文件的函数如下:

  while ( getline (myfile, stringg, ','))
{
std::cout << "j: " << j << " " << stringg << std::endl;

j++; //Note: j counts each cell.
}
myfile.close();
}

一切都完美无缺。然而,似乎 j 已经停止计数。这不应该是这种情况,因为 csv 文件中的数字仍在打印。

j: 0 x
j: 1 y
j: 2 z
j: 3 p
1
j: 4 2
j: 5 3
j: 6 4
5
j: 7 6
j: 8 7
j: 9 8

现在我知道为什么我相信它会那样做。每行的末尾没有逗号。然而!这仍然不能解释为什么 j 停止计数?

最佳答案

j 的计数是正确的...如果您仔细查看,您的文件将如下所示

x, y, z, p'\n'
1, 2, 3, 4'\n'
5, 6, 7, 8'\n'

所以当 j 的值为 3 时,getline() 读取的行是 p'\n'1 打印时在控制台上作为

j: 3 p
1

之后 j 递增,下一个标记在 2 中读取...其余相同..

关于c++ - cplusplus 导入 csv 不识别第一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22165413/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com