Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
uhb9999
0 / 0 / 0
Регистрация: 03.06.2016
Сообщений: 7
1

Не могу разобраться. Чтение и вывод на экран всего содержимого файла .txt на консоль

03.06.2016, 20:38. Просмотров 697. Ответов 2

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <cstdio>
#include <iostream>
#include <conio.h>
#include <fstream>
 
using namespace std;
 
void main()
{
    setlocale (0, "Russian");
    const int max = 255;    //максимальная длина строки
    FILE *in,   //исходный файл
        *out;   //принимающий файл
    if((fopen_s(&in, "F1.txt", "r")) != NULL)   //если файл F1 отстутствует программа выдает сообщение
    {
        cout << "\Файл F1 отсутствует\n";   
        _getch();
        exit(1);
    }   //задание пути к файлу F1 с доступом на чтение "r"
    fopen_s(&out, "F2.txt", "w");   //Задание пути к файлу F2 с доступом на запись
    char buf[max];  //строка с помощью которой выполняется копирование строк из одного файла в другой
    int i = 0;  //счетчик проверки на четность
    /*функция fets считывает символы из потока и сохраняет их в виде строки в параметр buf. Прием
    символов заканчивается после передачи max байтов или получении "\n". При успешном завершении
    считывания, функция возвращает указатель на прочит. строку, иначе возвращает NULL.*/
    while (fgets(buf, max, in) != NULL) //цикл, пока не закончится файл
    {
        if (i%2 == 1)   /*если строка четная, массив нач. с нул. элемента, поэтому нечет. элемент
                        массива - четная строка*/
            fputs(buf, out);    //записывать строку в файл out
            i++;    //увеличить счетчик
    }
    fseek (in, 0, SEEK_END);    //переместить внутренний указатель в конец файла in
    fseek (out, 0, SEEK_END);   /*Функция ftell возвращает значение указателя текущего положения потока
                                т.е. значение, соответствующее количеству байт от начала файла*/
    cout << "\nРазмер файла F1 (исходного файла in) :"<< ftell(in) << "байт\n"; //вывод размера файла in (F1.txt)
    cout << "\nРазмер файла F2 (принимающего файла out) :"<< ftell(out) << "байт\n";    //вывод размера файла out (F2.txt)
    char buf2[max];
    ifstream fin("F1.txt");
    fin >> buf2;
    cout << buf2 << endl;
    fin.get(buf2, max);
    fin.close();
    cout << buf2 << endl;
    fclose (in);    //закрытие файла in
    fclose (out);   //закрытие файла out
    char buf3[max];
    ifstream fout("F2.txt");
    fout >> buf3;
    cout << buf3 << endl;
    fout.get(buf3, max);
    fout.close();
    cout << buf3 << endl;
    _getch();
}
Вопрос такой: не могу понять как вывести содержимое обоих файлов из 2 файлов. Программа берет нечетные строки из одного файла, и вставляет в другой. Выводит только первые строчки (то есть что находится в buf2 и buf3), а мне нужно чтобы выводил весь текст из файлов. Помогите люди добрые, сижу 3 дня, ничего путного придумать не могу (думал в цикл отправить buf2 и buf3, но даже не знаю как оформить его).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2016, 20:38
Ответы с готовыми решениями:

Чтение файла и вывод его содержимого на экран
помогите разобраться с чтением файла и выводом его содержимого на экран... а то...

Не могу разобраться с чтением файла и последующего вывода в консоль
У меня задание. Из файла Hello.txt вывести текст (конкретно &quot;Hello world!&quot;)....

Чтение файла в кодировке utf-8 и вывод в консоль
Здорова! Пытаюсь прочитать файл в кодировке utf-8 (вот он ) и вывожу его в...

Вывод содержимого файла на экран
С помощью подсказок и своего немного труда создал программу. Но последние...

Вывод на экран содержимого файла
Напишите программу, которая выводит на экран содержимое файла A:\numbers.txt. ...

2
nmcf
6410 / 5672 / 2581
Регистрация: 14.04.2014
Сообщений: 23,998
03.06.2016, 20:44 2
C++
1
2
    ifstream fin("F1.txt");
    while (fin.getline(buf2, max)) cout << buf2 << endl;
1
uhb9999
0 / 0 / 0
Регистрация: 03.06.2016
Сообщений: 7
03.06.2016, 20:50  [ТС] 3
Благодарю, вы очень сильно помогли)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2016, 20:50

Ввод и вывод содержимого файла на экран
#include&lt;iostream&gt; #include&lt;fstream&gt; using namespace std; int main() { ...

Вывод содержимого текстового файла на экран
Нужно написать программу чтоб выводила содержимое текстового файла на экран,...

Вывод ВСЕГО текста из файла на экран
Подскажите, как вывести весь текст из файла на экран? Прошу не ругаться и носом...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru