Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2012, 22:26   #11
asmars
Форумчанин
 
Аватар для asmars
 
Регистрация: 28.05.2011
Сообщений: 309
По умолчанию

добавление нуля решило проблему одну но создало другую..
мне же надо потом результат записать в файл.. а оно читает первый символ ноль и ничего не пишет в файл.
Код:
int main()
{
        fstream myfile;
        int i=0;
        char text[1000];

        cout<<"Vvedite text, dlya zapisi v file.."<<endl;
        cin.getline(text,1000);

        //---zanosim text v file--
        myfile.open("file.txt", ios::out);
        myfile<<text;
        myfile.close();
        //----end zanosim text v file--

        //----chtenie texta iz file i pereobrazovanie symvolov--
        myfile.open("file.txt", ios::in);
        while(!myfile.eof()){
                text[i]=myfile.get();
                if(islower(text[i])){
                        text[i]=toupper(text[i]);
                }else{
                        text[i]=tolower(text[i]);
                }
                i++;
                text[i]=0;
        }
        myfile.close();
        //----end chtenie texta iz file i pereobrazovanie symvolov--

        //---zanosim text v file--
        myfile.open("file.txt", ios::out);
        myfile<<text;
        myfile.close();
        //----end zanosim text v file--

        cout<<text;

        getch();
        return 0;
}
Спеши медленно.
asmars вне форума Ответить с цитированием
Старый 29.03.2012, 23:51   #12
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Эту строчку нужно поставить немного дальше, а не каждый раз. Это же конец строки - нужно не вместо каждого символа его писать, а когда вся строка уже обработана:
Код:
        myfile.open("file.txt", ios::in);
        while(!myfile.eof()){
                text[i]=myfile.get();
                if(islower(text[i])){
                        text[i]=toupper(text[i]);
                }else{
                        text[i]=tolower(text[i]);
                }
                i++;
        }
        text[i]=0;
        myfile.close();
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 30.03.2012, 00:34   #13
asmars
Форумчанин
 
Аватар для asmars
 
Регистрация: 28.05.2011
Сообщений: 309
По умолчанию

странно в файл вообще ничего не пишется..
Код:
int main()
{
        fstream myfile;
        int i=0;
        char text[1000];

        cout<<"Vvedite text, dlya zapisi v file.."<<endl;
        cin.getline(text,1000);

        //---zanosim text v file--
        myfile.open("file.txt", ios::out);
        myfile<<text;
        myfile.close();
        //----end zanosim text v file--

        //----chtenie texta iz file i pereobrazovanie symvolov--
        myfile.open("file.txt", ios::in);
        while(!myfile.eof()){
                text[i]=myfile.get();
                if(islower(text[i])){
                        text[i]=toupper(text[i]);
                }else{
                        text[i]=tolower(text[i]);
                }
                i++;

        }
        text[i]=0;

        myfile.close();
        //----end chtenie texta iz file i pereobrazovanie symvolov--

        //---zanosim text v file--

        myfile.open("file.txt", ios::out);
        myfile<<text;
        myfile.close();
        //----end zanosim text v file--

        cout<<text<<endl;

        getch();
        return 0;
}
я придумал так сделать..
Код:
        //---zanosim text v file--
        ofstream myfile2;
        myfile2.open("file.txt");
        myfile2<<text;
        myfile2.close();
        //----end zanosim text v file--
но это как-то по криво очень! к тому же в конце в файл пишется какое-то "я"!
Спеши медленно.
asmars вне форума Ответить с цитированием
Старый 30.03.2012, 15:03   #14
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

Цитата:
Сообщение от asmars Посмотреть сообщение
к тому же в конце в файл пишется какое-то "я"!
чтоб не писалось надо так:
Код:
while(!myfile.eof()){
                text[i]=myfile.get();

                if (myfile.eof()) break;

                if(islower(text[i])){
                        text[i]=toupper(text[i]);
                }else{
                        text[i]=tolower(text[i]);
                }
                i++;

        }
onewho вне форума Ответить с цитированием
Старый 30.03.2012, 19:49   #15
asmars
Форумчанин
 
Аватар для asmars
 
Регистрация: 28.05.2011
Сообщений: 309
По умолчанию

великолепно! разобрался с вводом выводом в файл.
все работает!
onewho, Гром - большое спасибо за участие! с меня весы
Спеши медленно.
asmars вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение\Запись из файла vlados007 Общие вопросы C/C++ 1 10.03.2012 04:15
Чтение и запись fstream Armatus Общие вопросы C/C++ 15 07.10.2011 13:56
чтение и запись файла VaskaKostolom Паскаль, Turbo Pascal, PascalABC.NET 5 13.09.2011 20:59
Чтение из файла в запись THX35 Фриланс 8 19.03.2010 22:41
fstream, чтение и запись .txt willfogg Помощь студентам 0 26.04.2009 18:26