Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Федорец
1 / 1 / 1
Регистрация: 02.02.2014
Сообщений: 65
#1

Ввод вывод потоками, работа с файлом - C++

07.04.2014, 21:44. Просмотров 303. Ответов 1
Метки нет (Все метки)

Доброе время суток! Помогите вывести задачу в файл. Я создала два манипулятора, ввода и вывода. Возникла проблема с выводом этого всего сокровища в файл


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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
 
 
class LstackMain
{
    public:
        string str;
        LstackMain *Next,*Prev;
        LstackMain (string);
};
 
class Lstack
{
    int count;
    LstackMain *first,*last;
    public:
        Lstack();
        Lstack (string);
        Lstack (Lstack &copy);
        ~Lstack();
        void push (string); 
        void f_push(string);    string pop ();
        void f_print();
        void print();
        bool Isempty();
        int Num() {return count;}
    };
    ostream &outsetup(ostream &stream)
{
    stream.setf(ios::right);
    stream<<setw(10);
    return stream;
}
 
istream &insetup (istream &stream)
{
    stream.setf(ios::right);
        stream.width(40);
    
    return stream;
}
 
    LstackMain::LstackMain(string Instr)
    {
        str=Instr;  }
    
    Lstack::Lstack()
    {
        count=0;
        first=0;
        last=0; }
    
    Lstack::Lstack (Lstack&Copy)
    {
        count=Copy.count;   first=0; last=0;
        LstackMain *Curr=0, *CurrCreate,*CurrCopy=Copy.first;
        int i=1;
        while (CurrCopy!=0)
        {
        CurrCreate=new LstackMain (CurrCopy->str);
        if (i==1)
        {
            first=CurrCreate;
        }
        if (i==count)
        {
            last==CurrCreate;
        }
        CurrCreate->Prev=Curr;
        CurrCreate->Next=0;
        if (Curr!=0)
        {
            Curr->Next=CurrCreate;}
            CurrCopy=CurrCopy->Next;
            Curr=CurrCreate;
            i++;
        }}
 
    Lstack::Lstack(string Instr)
    {
        count=1;
        first=new LstackMain (Instr); last=first;
    }
    
    Lstack::~Lstack()
    {
        LstackMain *TempForDel=first;
        while (TempForDel)
        {
            TempForDel=first->Next; delete first;
            first=TempForDel;
        }}
    
    void Lstack::push (string Instr)
    {
        count++;
        LstackMain *New=new LstackMain (Instr);
        if (first==0)
        {
            first=last=New;
            New->Prev=last;
            last->Next=0;
            New->Prev=0;
        }
        else
        {
            New->Prev=last;
            last->Next=New;
            last=New;
            New->Next=0;
        }}
        
        void Lstack::f_push (string Instr)
    {
        ifstream ifs("2.txt");
        count++;
        LstackMain *New=new LstackMain (Instr);
        if (first==0)
        {
            first=last=New;
            New->Prev=last;
            last->Next=0;
            New->Prev=0;
        }
        else
        {
            New->Prev=last;
            last->Next=New;
            last=New;
            New->Next=0;
        }
        ifs.close();}
        
        string Lstack::pop()
        {
            if (count<1)
            {
                return "The stack is empty";
            }
            if (count==1)
            {
                first=0;
            }
            count--;
            string TempForDel=last->str;
            LstackMain *Temp=last->Prev;
            delete last;
            last=Temp;
            if (last!=0)
            {
                last->Next=0;
            }
            return TempForDel;
        }
        
        void Lstack::print()
        {
            LstackMain *TempForPrint=first;
            while (TempForPrint)
            {
                cout<<outsetup<<TempForPrint->str<<"\n";
                TempForPrint=TempForPrint->Next;
            }
        }   
        
        void f_print(int k, Book *book)
{ ofstream ofs("3.txt");
 
        bool Lstack::Isempty()
        {
            if (count)
            {
                return 0;
            }
            return 1;
            ofs.close();
        }
        
        int main()
        {
            Lstack Pupils;
            int NumOfEnt;
            cout<<outsetup<<"Enter number of string entries: ";
            cin>>NumOfEnt;
            cout<<"Enter your data:\n";
            string InputString;
            getline (cin,InputString);
            for (int i=0;i<NumOfEnt;i++)
            {
                getline (cin,InputString);
                Pupils.push(InputString);
            }
            cout<<"Is your stack empty:"<<Pupils.Isempty()<<"\n\n";
            cout<<"Your stack has "<<Pupils.Num()<<" lines\n\n";
            cout<<"The last line is:\n"<<Pupils.pop()<<"\n\n";
            cout<<"Now your stack has "<<Pupils.Num()<<" lines\n\n";
            cout<<"Data in your stack:\n";
            Pupils.print();
            Pupils.f_print();
            Lstack CopyTest(Pupils);
            cout<<"\n Copied Stack:\n";
            CopyTest.print();
            CopyTest.f_print();
            delete &CopyTest;
            delete &Pupils;
            return 0;
            }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2014, 21:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод вывод потоками, работа с файлом (C++):

Работа с большим файлом (файловый ввод/вывод) - C++
// PassPars.cpp: главный файл проекта. #include &quot;stdafx.h&quot; #include &lt;fstream&gt; #include &lt;iostream&gt; using namespace System; ...

Работа с файлами, ввод/вывод - C++
Подскажите пожалуйста, как мне правильно написать программу: В файле содержится информация о сотрудниках(фамилия, инициалы, должность,...

Ввод вывод.Работа с файлами - C++
Вот я ввожу данные . Но как их записать в файл? ofstream fot(&quot;database.txt&quot;,ios_base::out | ios_base::trunc); for(i=0;i&lt;10;i++) { ...

Заменить в программе, переводящую строку в двоичный код, консольный ввод/вывод на файловый ввод/вывод - C++
Добрый день! Помогите, пожалуйста, с программой. Программа считывает строку с клавиатуры и переводит её в двоичный код. затем наоборот...

Работа с файлами, ввод и вывод, многостроковые файлы - C++
Есть проблема. Я пытался создать такую программу, смыслом которой является: вывод данных из готового .txt файла, затем запрос ввода, запись...

Простая работа с file.txt (ввод/вывод) - C++
Прочёл пару статей на эту тему, коды не пашут. Объясните пожалуйста как открыть файл, записать данные из этого файла в какой либо...

1
ninja2
814 / 188 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
07.04.2014, 22:17 #2
Лень читать код, подключи просто <fstream> и используй using std::ofstream
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2014, 22:17
Привет! Вот еще темы с ответами:

Работа с файлами: вывод-ввод результатов программы в текстовый файл - C++
#include&lt;iostream&gt; #include&lt;cstdlib&gt; #include&lt;ctime&gt; using namespace std; int main() { setlocale(0, &quot;rus&quot;); cout &lt;&lt;...

Работа с файлами (создание, ввод, вывод и поиск по значению ключевого поля) - C++
Мне нужно разработать программу, которая реализует с файлом последовательного доступа следующие операции: создание, ввод, вывод и поиск по...

Поменять консольный ввод-вывод на файловый ввод-вывод - C++
вот у меня калькулятор как мне сделать что б числа вводились из файла и результат записывался в новый файл ? // ОБРАТНАЯ...

Работа с потоками - C++
Задача поставлена так : Необходимо открыть поток, записать некую информацию и далее закрыть его. Но необходимо, чтобы после закрытия...


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

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

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