Как считывать слова из файла на с++?

Пользователь

от urban_will , в категории: C/C++ , 2 года назад

Как считывать слова из файла на с++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от stephania , 2 года назад

@urban_will 

Чтобы считать слова из файла на C++, вы можете использовать поток ввода (ifstream). Вот пример кода, который открывает файл, считывает его содержимое построчно, и выводит каждое слово на отдельной строке:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
#include <fstream>
#include <iostream>
#include <string>
#include <sstream>

int main() {
    std::ifstream file("file.txt");
    std::string line;
    while (std::getline(file, line)) {
        std::istringstream linestream(line);
        std::string word;
        while (linestream >> word) {
            std::cout << word << std::endl;
        }
    }
    return 0;
}


В этом примере, функция getline используется для считывания одной строки из файла за раз. После этого, мы создаем поток ввода (istringstream) из строки и используем оператор >> для чтения каждого слова из потока.

Пользователь

от rodger.botsford , год назад

@urban_will 

Если вам нужно считать все слова из файла в одну строку без разделителей, вы можете использовать обычный поток ввода (ifstream) и оператор извлечения (>>) как показано ниже:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#include <iostream>
#include <fstream>
#include <string>

int main() {
    std::ifstream file("file.txt");
    std::string word;
    
    while (file >> word) {
        std::cout << word << std::endl;
    }
    
    file.close();
    return 0;
}


В этом примере мы открываем файл "file.txt" в режиме чтения с помощью std::ifstream. Затем мы используем оператор извлечения (>>) для чтения каждого слова из файла и выводим его на экран. После завершения работы мы закрываем файл с помощью file.close().


Обратите внимание, что результаты будут разделены символом новой строки (endl), но вы можете изменить это по своему усмотрению, если это требуется.