C++ 如何在C+中仅读取.csv文件每行的第一个值+;?

C++ 如何在C+中仅读取.csv文件每行的第一个值+;?,c++,C++,我想使用while循环将C++中的.cv文件的每一行的第一个值放在变量中并在之后打印出来。输出是这样打印的每行的第一个值 我的数据是(在.cssv文件中) 我想在每次迭代中将名称放入一个变量中,然后将其打印出来。我的输出仅是这些名称的列表。您可以使用std::stringstream和std::getline获取第一个名称,如下所示: std::string str; std::vector <std::string> result; // Vector of names

我想使用while循环将C++中的.cv文件的每一行的第一个值放在变量中并在之后打印出来。输出是这样打印的每行的第一个值

我的数据是(在.cssv文件中)


我想在每次迭代中将名称放入一个变量中,然后将其打印出来。我的输出仅是这些名称的列表。

您可以使用
std::stringstream
std::getline
获取第一个名称,如下所示:

std::string str;
std::vector <std::string> result;       // Vector of names

while( std::getline( std::cin, str ) )  // replace std::cin, with file input stream
{
    std::stringstream ss(str);
    if( ss.good() )
    {
        std::string substr;
        std::getline( ss, substr, ',' ); // Grab first names till first comma
        result.push_back( substr );      // Push into the vector
    }
}
std::string str;
std::向量结果;//名称向量
while(std::getline(std::cin,str))//用文件输入流替换std::cin
{
std::stringstream ss(str);
如果(ss.good())
{
std::字符串substr;
std::getline(ss,substr,',');//抓取名字直到第一个逗号
result.push_back(substr);//推入向量
}
}

到目前为止,您尝试了什么?哪里出错了?使用
std::getline()
读取整行,解析第一个值并继续读取。
std::string str;
std::vector <std::string> result;       // Vector of names

while( std::getline( std::cin, str ) )  // replace std::cin, with file input stream
{
    std::stringstream ss(str);
    if( ss.good() )
    {
        std::string substr;
        std::getline( ss, substr, ',' ); // Grab first names till first comma
        result.push_back( substr );      // Push into the vector
    }
}