Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
#1

Построчное считывание текста - C++

13.08.2012, 14:37. Просмотров 1295. Ответов 15
Метки нет (Все метки)

Мне нужно занести текст из файла в переменную, причем в таком же виде, как в в самом файле. И если потом потребуется вывести эту переменную в консоль, то абсолютно все пробелы и переносы строк cовпадали с исходным видом (то есть, как в файле). Как такое можно сделать?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
13.08.2012, 14:38     Построчное считывание текста #2
std::getline
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:40  [ТС]     Построчное считывание текста #3
Цитата Сообщение от Jupiter Посмотреть сообщение
std::getline
А можно поподробнее
DaskOFF
112 / 112 / 9
Регистрация: 02.05.2012
Сообщений: 521
Записей в блоге: 1
13.08.2012, 14:42     Построчное считывание текста #4
std::getline(имяфайла, имяпеременной)

Добавлено через 1 минуту
допустим чтобы прочитать весь файл создаешь цикл
C++
1
2
3
while(std::getline(outfile, str) {
std::cout << str << std::endl;
}
пока будет что считывать из файла цикл выполняется
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:44  [ТС]     Построчное считывание текста #5
Добавлено через 26 секунд
Цитата Сообщение от DaskOFF Посмотреть сообщение
std::getline(имяфайла, имяпеременной)

Добавлено через 1 минуту
допустим чтобы прочитать весь файл создаешь цикл
C++
1
2
3
while(std::getline(outfile, str) {
std::cout << str << std::endl;
}
пока будет что считывать из файла цикл выполняется
Спасибо)
DaskOFF
112 / 112 / 9
Регистрация: 02.05.2012
Сообщений: 521
Записей в блоге: 1
13.08.2012, 14:45     Построчное считывание текста #6
он считывает только строку из файла, чтобы прочесть файл создаешь цикл, каждая строка будет в таком же виде как и в файле
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:46  [ТС]     Построчное считывание текста #7
Цитата Сообщение от DaskOFF Посмотреть сообщение
std::getline(имяфайла, имяпеременной)

Добавлено через 1 минуту
допустим чтобы прочитать весь файл создаешь цикл
C++
1
2
3
while(std::getline(outfile, str) {
std::cout << str << std::endl;
}
пока будет что считывать из файла цикл выполняется
а str это переменная в которую надо заносить данные?
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
13.08.2012, 14:47     Построчное считывание текста #8
Цитата Сообщение от Egor138 Посмотреть сообщение
А можно поподробнее
для подробностей воспользуйтесь поиском
Цитата Сообщение от DaskOFF Посмотреть сообщение
std::getline(имяфайла, имяпеременной)
не имя файла, а идентификатор объекта потока
не имяпеременной, а идентификатор объекта стандартной строки
cossack5
54 / 48 / 1
Регистрация: 02.08.2012
Сообщений: 127
13.08.2012, 14:48     Построчное считывание текста #9
Цитата Сообщение от Egor138 Посмотреть сообщение
а str это переменная в которую надо заносить данные?
Именно.
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:50  [ТС]     Построчное считывание текста #10
Цитата Сообщение от Jupiter Посмотреть сообщение
для подробностей воспользуйтесь поиском

не имя файла, а идентификатор объекта потока
не имяпеременной, а идентификатор объекта стандартной строки
А что это такое то?

Добавлено через 1 минуту
Цитата Сообщение от cossack5 Посмотреть сообщение
Именно.
Возникает ошибка:

C++
1
2
3
while(getline("123.txt", mainMenu)) {
cout <<mainMenu<<endl;
}
DaskOFF
112 / 112 / 9
Регистрация: 02.05.2012
Сообщений: 521
Записей в блоге: 1
13.08.2012, 14:52     Построчное считывание текста #11
тут ошибка "123.txt" надо указывать переменную связанную с файлом, причем с открытым
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
13.08.2012, 14:52     Построчное считывание текста #12
Цитата Сообщение от Egor138 Посмотреть сообщение
А что это такое то?
C++
1
2
3
4
5
6
std::string str; //строка
std::ifstream file("123.txt"); //файловый поток
 
if (file.is_open())
    while (std::getline(file, str))
         ;
Пaтрик
395 / 388 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
13.08.2012, 14:53     Построчное считывание текста #13
Цитата Сообщение от Egor138 Посмотреть сообщение
Возникает ошибка:
Цитата Сообщение от Jupiter Посмотреть сообщение
не имя файла, а идентификатор объекта потока
Написано же.
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:54  [ТС]     Построчное считывание текста #14
Цитата Сообщение от Jupiter Посмотреть сообщение
C++
1
2
3
4
5
6
std::string str; //строка
std::ifstream file("123.txt"); //файловый поток
 
if (file.is_open())
    while (std::getline(file, str))
         ;
Спасибо все отлично заработало)
DaskOFF
112 / 112 / 9
Регистрация: 02.05.2012
Сообщений: 521
Записей в блоге: 1
13.08.2012, 14:54     Построчное считывание текста #15
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
    std::ifstream file;
    file.open("123.txt");
    std::string line;
 
    while (std::getline(file, line) {
        std::cout << line << std::endl;
    }
 
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.08.2012, 14:57     Построчное считывание текста
Еще ссылки по теме:

C++ Считывание текста из файла
C++ Построчное считывание файла
Построчное считывание матрицы из файла C++
C++ Построчное считывание в файл
C++ Считывание текста из файла

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Egor138
30 / 11 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
13.08.2012, 14:57  [ТС]     Построчное считывание текста #16
Цитата Сообщение от DaskOFF Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main()
{
    std::ifstream file;
    file.open("123.txt");
    std::string line;
 
    while (std::getline(file, line) {
        std::cout << line << std::endl;
    }
 
    return 0;
}
Спасибо)
Yandex
Объявления
13.08.2012, 14:57     Построчное считывание текста
Ответ Создать тему
Опции темы

Текущее время: 14:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru