gpt4 book ai didi

c++ - 多维 vector 和 csv 文件

转载 作者:行者123 更新时间:2023-11-30 04:07:44 24 4
gpt4 key购买 nike

请帮助我处理多维 vector 。我有一个 csv 文件。我想要的是它将:

  1. 读取 csv 文件,将其放入 6 行 7 列的 vector 中。
  2. 返回 vector 。
  3. 所有这些都放在一个函数中。不是主要功能。

即使是简单的示例代码也可以。

我结束了这个,但我卡住了。

vector< vector <string> > THIRDSTEP::DispSched(string movies)
{
ifstream file("sched1.csv");
vector < vector<string> > data(7, vector<string>(6));
while (!file.eof())
{
for (int r = 0; r < 7; ++r)
{
vector<string> row;
string line;
getline(file, line);
if (!file.good())
break;
stringstream iss(line);

for (int c = 0; c < 7; ++c)
{
string val;
getline(iss, val, ',');
if (!iss.good())
break;

stringstream convert(val);
data.push_back(convert);
}
}

}

return data;
}

最佳答案

尝试将您的 while 循环更改为如下所示:

string line;
int r = 0;

// We can build the vector dynamically. No need to specify the length here.
vector < vector<string> > data;

// while r < 7 and getline gives correct result
while (r < 7 && getline(file, line))
{
vector<string> row;
stringstream iss(line);
int c = 0;
string val;

// while c < 7 and getline gives correct result
while (c < 7 && getline(iss, val, ','))
{
// no need for converting as you are reading string.
row.push_back(val);
}
data.push_back(row);
}

关于c++ - 多维 vector 和 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22242021/

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