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

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

Войти
Регистрация
Восстановить пароль
 
tube
0 / 0 / 0
Регистрация: 24.09.2008
Сообщений: 26
#1

Как открыть два файла для записи? - C++

16.06.2009, 12:21. Просмотров 1055. Ответов 4
Метки нет (Все метки)

Здравствуйте, есть следующий код
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
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
    int accountNum; // номер счета
    char name[10]; // имя клиента
    float balance; // баланс
 
    ofstream outOldMaster("oldmast.txt", ios::out); // открываем первый файл для записи
    if(!outOldMaster) {
        cerr << "File outOldMaster cannot be open\n";
        exit(1);
    }
 
    cout << "Введите номер счета, имя клиента и баланс\n? ";
    while(cin>>accountNum >> name >> balance) {                       
        outOldMaster << accountNum << " " << name << " " << balance << endl; 
        cout << "? ";
    }
 
   ofstream outTransaction("trans.txt", ios::out); // открываем второй файл для записи
    if(!outTransaction) {
        cerr << "File outTransaction cannot be open\n";
        exit(1);
    }
 
    cout << "Введите номер счета и расходы:\n? ";
    float dollarAmount; // расходы
    while (cin >> accountNum >> dollarAmount) {
        outTransaction << accountNum << " " << dollarAmount << endl;
        cout << "? ";
    }
Вопрос в следующем - почему программа завершается на строке cout << "Введите номер счета и расходы:\n "??
Второй файл создается, но запись в него не происходит, в чем тут ошибка?

Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2009, 12:21     Как открыть два файла для записи?
Посмотрите здесь:

Можно ли открыть поток для чтения и записи файла одновременно? - C++
Можно ли открыть поток для чтения и записи одновременно? Этот код не работает: wchar_t temp; wstring wchars; ...

Как открыть файл одновременно для чтения и для записи? - C++
Делаю вот так, но ничего не получается.:( std::fstream inOutCredit(&quot;credit.dat&quot;, std::ios::ate | std::ios::binary); if...

Как изменить размер открытого для записи файла - C++
Доброе время суток. Задание: В текстовом файле заменить все последовательности идущих подряд пробелов одним пробелом. Как изменить...

Как инициализировать дескриптор для записи и чтения файла - C++
Здорова! Написал программку для чтения из файла. Но чото при вызове ничего не происходит. #include &lt;iostream&gt; using std::cout; ...

Как узнать текущий размер файла, открытого для записи? - C++
File=CreateFile(FilePath.c_str(), GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);, потом в этот файл...

Открыть существующий файл для записи и считывания - C++
Написал код FILE * fo;//создаю указатель if( (fo=fopen(&quot;backup_date.txt&quot;,&quot;at&quot;)) == 0 ) {//открываю файл и проверяю открылся или...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
16.06.2009, 12:52     Как открыть два файла для записи? #2
Цитата Сообщение от tube Посмотреть сообщение
Здравствуйте, есть следующий код
C++
1
2
3
4
5
6
7
8
    while(cin>>accountNum >> name >> balance) {                       
        outOldMaster << accountNum << " " << name << " " << balance << endl; 
        cout << "? ";
    }
    while (cin >> accountNum >> dollarAmount) {
        outTransaction << accountNum << " " << dollarAmount << endl;
        cout << "? ";
    }
А какое условие выхода из етих циклов?
tube
0 / 0 / 0
Регистрация: 24.09.2008
Сообщений: 26
16.06.2009, 13:01  [ТС]     Как открыть два файла для записи? #3
функция operator void*, замена eof. когда вводится маркер конца файла, цикл завершается. проблема в том, что в первый файл все данные записываются, второй же создается пустым.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
16.06.2009, 13:12     Как открыть два файла для записи? #4
Цитата Сообщение от tube Посмотреть сообщение
замена eof. когда вводится маркер конца файла
тогда попробуй после первого цикла
C++
1
cin.clear();
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2009, 13:31     Как открыть два файла для записи?
Еще ссылки по теме:

LINK: fatal error LNK1168: не удается открыть exe для записи - C++
Подскажите пожалуйста,что значит эта ошибка? 1&gt;------ Построение начато: проект: Курсовая лаба, Конфигурация: Debug Win32 ------ ...

fatal error LNK1168: не удается открыть F:\Interp\Debug\Interp.exe для записи - C++
После того,как в 38 строке к k приписал &quot;=0&quot;начало выбивать ошибку &quot;fatal error LNK1168: не удается открыть F:\Interp\Debug\Interp.exe для...

Имя файла для записи - C++
Всем доброго времени суток. Вопрос такой: Мне нужно, создать файл для записи в него определенных чисел и имя этого файла должно...

Открытие файла для чтения/записи - C++
Помогите реализовать открытие файла под компилятор g++ или DevC++ вечно ругается на std.. using namespace std; не помогает. как...

Указание пути для записи файла - C++
Здравствуйте! хочу записать файл: std::string neym = &quot;1.txt&quot;; myfile.open(neym, std::ios_base::out); это пишет в папку с...

Как открыть исходники с++, если нет *.sln файла - C++
Скачал исходники проекта (вот ссылка https://github.com/Y-Vladimir/SmartDeblur/tree/master/src). Пробовал открыть его через visual studio,...


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

Или воспользуйтесь поиском по форуму:
tube
0 / 0 / 0
Регистрация: 24.09.2008
Сообщений: 26
16.06.2009, 13:31  [ТС]     Как открыть два файла для записи? #5
Вот, теперь все работает, спасибо огромное!
Yandex
Объявления
16.06.2009, 13:31     Как открыть два файла для записи?
Ответ Создать тему
Опции темы

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