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

Ввод в файл - C++

Восстановить пароль Регистрация
 
Noobass
0 / 0 / 0
Регистрация: 15.10.2012
Сообщений: 100
12.02.2013, 19:40     Ввод в файл #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
#include <iostream>
using namespace std;
#include <fstream>
#include <cstdlib>
int main(int argc, char * argv[])
{
    if(argc==1)
    {
        cerr<<"Usage: "<<argv[0]<<" filename[s].\n";
        exit(0);
    }
    ofstream fout;
    char ch;
    fout.open(argv[1]);
    if(!fout.is_open())
    {
        cerr<<"ERROR!\a\a\a\n";
        exit(1);
    }
    cout<<"Enter a symbols (or # to quit): ";
    while(cin.get()!='#')
    {
        cin.get(ch);
        if(ch!='#')
            fout<<ch;
    }
    fout.close();
    system("pause");
    return 0;
}
Дело в том, что прога ничего не записывает, а почему - я никак не могу понять . Помогите, пожалуйста, разобраться

Добавлено через 17 минут
Вот, только что исправлял, что получилось
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
#include <iostream>
using namespace std;
#include <fstream>
#include <cstdlib>
int main(int argc, char * argv[])
{
    if(argc==1)
    {
        cerr<<"Usage: "<<argv[0]<<" filename[s].\n";
        exit(0);
    }
    ofstream fout(argv[1],ios::out|ios::app);
    char ch;
    if(!fout.is_open())
    {
        cerr<<"ERROR!\a\a\a\n";
        exit(1);
    }
    cout<<"Enter a symbols (or # to quit): ";
    while(cin.get()!='#')
    {
        cin.get(ch);
        if(ch!='#')
            fout<<ch;
    }
    fout.close();
    system("pause");
    return 0;
}
Теперь прога записывает ввод, но некорректно (символы некоторые "глотает"). И еще одно - прога почему-то создает файл, вместо того, чтобы записать в существующий. Как быть ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 19:40     Ввод в файл
Посмотрите здесь:

C++ Буферизованный ввод в файл
C++ Файл: Изменить программу таким образом чтобы ввод исходных данных осуществлялся из файла, результат также должен выводиться в файл
C++ ввод и вывод в файл
Ввод\вывод в файл C++
Ввод и вывод в файл C++
Неверный ввод в файл C++
Ввод в файл С++ C++
C++ Файл ввод-вывод

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 22:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru