C++: построчное чтение из файла с проверкой его существования
Это не полноценная статья, а просто заметка. Иногда забываются элементарные вещи, с помощью таких заметок найти их проще. Ниже я покажу, как в C++ Visual Studio 2010 можно считать построчно данные из файла вывести их в консоль. Также будет произведена проверка существования файла. Итак, вот сам текст программы:
#include <fstream> #include <iostream> using namespace std; int main() { ifstream fin ("10.txt"); if(fin.is_open()){ ifstream fin; fin.open("1.txt"); char ch; while (fin.get(ch)) cout<<ch; fin.close(); system("pause"); } else { cout << "File not found" << endl; system("pause"); } return 0; }Что нам надо сделать? Нам надо прочитать файл со сроками. Файл называется "1.txt". Для чего это надо? Например, для отправки сообщений. Здесь производится вывод в консоль, но никто не мешает также считать в массив, к примеру, а уж с массивом работать намного проще. Немного комментариев по программе.
Первые три строки - заголовки, подключаются пространства имен. 7 строка открывает файл, точнее проверяет его открытие. Обратите внимание, что в тексте программы специально задано неверное имя файла - "10.txt". Для корректной работы программы его необходимо заменить на "1.txt". Повторно открывается файл в 12 строке. 14 строка открывает цикл до конца файла, 15 печатает.
Вот собственно и все. С помощью этой небольшой программки можно прочитать построчно любой файл в C++. Для компиляции и запуска использовалась среда Visual Studio 2010, но в принципе программа должна заработать везде: в любой среде, с любым компилятором.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Читайте также:
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.