Построчное чтение из файла и подсчет слов в каждой строке
необходимо написать программу, которая считывает текст из файла(3-4 строки) и в каждой строке считает количество строк. результат должен выглядеть примерно так: строка 1: 4 слова, строка 2:2 слова. Всю голову уже сломала. но могу посчитать только пробелы или строки.
Ответы (1 шт):
Автор решения: Maggot
→ Ссылка
Читайте файл по строкам через std::getline. и считайте слова через std::istream_iterator получите кол-во слов Вот код:
#include <iostream>
#include <fstream>
#include <string>
#include <filesystem>
#include <iterator>
std::size_t WordCountLine(std::string& line) {
std::stringstream stream(line);
return std::distance(std::istream_iterator<std::string>(stream), std::istream_iterator<std::string>());
}
int main() {
std::filesystem:: path file{"text"};
std::ifstream in(file);
std::string line;
std::size_t i{0};
while (++i, std::getline(in, line)) {
std::cout << " line: " << i << " word count : " << WordCountLine(line) << std::endl;
}
return 0;
}