Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2015, 21:53   #1
dimon_snake
Форумчанин
 
Регистрация: 05.11.2015
Сообщений: 167
По умолчанию Помогите - С++

Объясните, как читать из входном текстового файла?
Понятно, первая строка будет:
название файла>>переменная;
А как читать вторую строку, как переносить чтение строки?
Аналогично с выводом. Как вывести что-то на вторую, третью строку:
dimon_snake вне форума Ответить с цитированием
Старый 18.12.2015, 22:09   #2
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

Код:
std::ifstream input_file("input.txt") ;
if( !input_file.is_open() ){
  std::wcerr << L"err\n" ;
  return /*...*/ ;
}
std::vector<std::string> vec ;
std::string line ;
while( std::getline(input_file, line) ){
   vec.push_back(line) ;
}
Croessmah вне форума Ответить с цитированием
Старый 19.12.2015, 20:57   #3
dimon_snake
Форумчанин
 
Регистрация: 05.11.2015
Сообщений: 167
По умолчанию

Спасибо. А выходной файл?
dimon_snake вне форума Ответить с цитированием
Старый 19.12.2015, 21:22   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А выходной файл?
Код:
std::ofstream o_file("out.txt") ;
...
while( std::getline(input_file, line) ){
   ...
   o_file<<line;
};
o_file.close();
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.12.2015, 22:40   #5
dimon_snake
Форумчанин
 
Регистрация: 05.11.2015
Сообщений: 167
По умолчанию

А можете объяснить, что делает что? И во входном, и в выходном файлах.
А то никак не могу вставить это в программу
dimon_snake вне форума Ответить с цитированием
Старый 19.12.2015, 22:50   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Попробую.
Код:
//Открываем файл.
std::ifstream input_file("input.txt") ;
//Проверяем нормально ли файл открылся
if( !input_file.is_open() ){
//Если нет - матбкаемся и уходим.
  std::wcerr << L"err\n" ;
  return /*...*/ ;
}
//Организовываем массив строк используя vector.
std::vector<std::string> vec ;
//И переменку, куда предварительно считаем строку из файла
std::string line ;
//В цикле будем считывать построчно пока строки не кончатся
while( std::getline(input_file, line) ){
//И вносить их в конец массива-вектора
   vec.push_back(line) ;
}
Код:
//Открываем файл для записи
std::ofstream o_file("out.txt") ;
...
//Цикл, который вверху описан
while( std::getline(input_file, line) ){
   ...
  //Внутри его строка, считанная из файла пересылается во второй файл
   o_file<<line;
};
//Созданный файл закрывается и сохраняется на диск.
o_file.close();
Слюш, а ты уверен, что задание правильно озвучил?
ИМХО что-то тут не то...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.12.2015, 23:12   #7
dimon_snake
Форумчанин
 
Регистрация: 05.11.2015
Сообщений: 167
По умолчанию

Ну у меня такое: Нужно взять из входного файла два числа, потом я делаю с ними операции, а в выходной файл пишу "Да" или "Нет". Потом я читаю следующую строку во входном файле, и снова записываю в выходной Да или нет
dimon_snake вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод нужен срочно помогите ) в течение 2 часов от Паскаля на Турбо СИ нужно помогите Жанибек Помощь студентам 14 01.04.2015 17:23
Помогите создать програму для роботы с файлами, пожалуйста помогите нужно очень срочно Сергей Человек Фриланс 3 06.07.2009 19:30
Помогите Помогите Пожалуйста Решить Одну Задачку в Паскале!!! VisTBacK Помощь студентам 6 19.09.2008 13:44