在C++中,在每个句号之后对句子进行分隔

Delimit Sentences in C++, after each period

本文关键字:句子 分隔 之后 C++      更新时间:2023-10-16

很抱歉,我在这里放这段代码时遇到了很多麻烦。我想基本上解析文件";question.txt";每次我看到一个句号,我都想要一条新的线基本上:

嗨,吉姆。(新品)

嗨,蒂姆。(换行)

int main(){
    ifstream openQuiz;
    openQuiz.open("questions.txt");
    string line;
    //int count = 0;
    //Check for errors 
    if (openQuiz.fail()) {
        cerr << "Error opening file" << endl;
    }
    //Reading from beginning to ending;
    while (!openQuiz.eof()) {
        
    
    }
    openQuiz.close();
    return 0;
}

您可以使用fstream而不是ifstream。不同之处在于fstream可以同时进行输入和输出。然后你可以简单地一个接一个地读这些字符。每当你读到"."写一行换行符。

#include <iostream>
#include <fstream>
using namespace std;
int main() {
  ifstream f("file.txt");
  char c;
  while (f.get(c)) {
    cout << c;
    if (c=='.') cout << endl;
  }
  return 0;
}

你觉得怎么样?您可以在此处阅读有关std::istream::get()的更多信息http://www.cplusplus.com/reference/istream/istream/get/