C++ 通过int读取文件,然后读取单词

C++ 通过int读取文件,然后读取单词,c++,fstream,getline,C++,Fstream,Getline,我有一个类似的文本文件 1\t单词 2\t单词 其中,#是行#,后面是制表符,然后是随机词 我需要读入int,存储它,然后跳过\t,并在跟踪单词位置的同时逐个读入每个单词 我希望我能用getline(file,word,”),和一个计数器来实现它,但它会将我的第一个单词作为1\t单词 如果您能提供任何帮助或建议,我们将不胜感激。假设您无法说出一行中有多少个单词,那么简单的答案就是分两步完成 使用getline将整行读入字符串 将该字符串放入std::istringstream中,并从std::i

我有一个类似的文本文件

1\t单词

2\t单词

其中,
#是行#
,后面是制表符,然后是随机词

我需要读入int,存储它,然后跳过\t,并在跟踪单词位置的同时逐个读入每个单词

我希望我能用
getline(file,word,”)
,和一个计数器来实现它,但它会将我的第一个单词作为
1\t单词


如果您能提供任何帮助或建议,我们将不胜感激。

假设您无法说出一行中有多少个单词,那么简单的答案就是分两步完成

  • 使用getline将整行读入字符串
  • 将该字符串放入std::istringstream中,并从std::istringstream中读取行号和后面的单词

  • 然后从步骤1开始重复使用
    stringstream
    getline

    getline(file, line);
    std::stringstream ssline(line);
    int num;
    ssline >> num;
    std::string word;
    while(ssline >> word){
    // do whatever you want. 
    }
    

    所以不是一个建议站点,而是一个QA站点。问我们一个具体的问题,我们会帮助你。好的。。。具体来说,我该怎么做?@Manu343726我真的认为这不值得投反对票。那家伙试图解决这个问题,但他迷路了。