我正在阅读我的c ++程序csv文件:
abc;def;ghi
10;;10
通过此代码:
while(getline(in, str, '\n')){
stringstream ss;
while(getline(ss, str, ';')){
line.add(str);
}
}
在输入文件中,str
是字符串变量,line是我的集合(如vector
)。但是getline
跳过了csv文件中的空字符串。
任何人都可以帮我读空字符串吗?
谢谢:)
答案 0 :(得分: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);
}
}