0

我正在阅读我的 c++ 程序 csv 文件:

abc;def;ghi

10;;10

通过此代码:

    while(getline(in, str, '\n')){
      stringstream ss;
      while(getline(ss, str, ';')){
         line.add(str);
      }
    }

其中 in 是输入文件,str是字符串变量,而 line 是我的集合(如vector)。但是getline跳过了 csv 文件中的空字符串。

任何人都可以帮助我阅读空字符串吗?

谢谢 :)

4

1 回答 1

2

你从来没有初始化你的流!

尝试这个:

#include <string>   // for std::string and std::getline
#include <sstream>  // for std::istringstream

for (std::string jimbob; std::getline(in, jimbob); )
{
    std::istringstream marysue(jimbob);  // !
    for (std::string charlie; std::getline(marysue, charlie, ';'); )
    {
        line.add(charlie);
    }
}
于 2013-03-21T21:26:36.253 回答