这可能很容易,但我不确定如何。我尝试搜索多个网站,是谷歌,但在这方面找不到任何东西。
我的矢量result[0]
看起来像这样
A3 * * B4 * *
声明
vector<string> result = v.formVectorFile("Prj3 Config.txt");
我知道cin
读取直到空白,所以我试图用它来解决这个问题。
如果我直接从fstream
阅读,我可以阅读直到空格,但是我试图用向量内的字符串来做这个,result[0] >> s;
之类的东西显然不起作用。
我需要阅读,直到它碰到一个空格然后读取下一个直到空格。等等...
所以自己提取A3
。在上面操作,然后提取*
等......
答案 0 :(得分:2)
您的问题不明确,因为您没有准确地告诉我们result
是什么。
如果我们可以假设result
是std::vector<std::string>
,那么你可以这样做:
std::istringstream iss(result[0]); // consider only first string in vector
std::string item;
while(iss >> item) {
std::cout << "I found: " << item << "\n";
}
如果我们假设result
是std::vector<char>
,那么您可以这样做:
std::string s(result.begin(), result.end()); // consider entire vector as single string
std::istringstream iss(s);
while(iss >> item) {
std::cout << "I found: " << item << "\n";
}