C ++从空格分隔的文本文件中填充字符串向量

时间:2012-06-23 01:42:09

标签: c++

我有一个以空格分隔的文本文件,我需要从中提取单个单词以填充vector<string>

我尝试使用strtok,但我知道这不起作用,因为strtok会返回char pointer。有没有办法从文件中提取单词,并用它们填充string vector?谢谢!

2 个答案:

答案 0 :(得分:5)

有“发烧友”的方式,但在我看来,以下是初学者最容易理解的(并且可作为变体的基础):

if (std::ifstream input(filename))
{
    std::vector<std::string> words;
    std::string word;
    while (input >> word)
        words.push_back(word);
}

答案 1 :(得分:2)

考虑使用ifstream来读取文件。

然后,您可以使用>> operator将下一个字移到string