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

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

Войти
Регистрация
Восстановить пароль
 
KellyDink
1 / 1 / 0
Регистрация: 04.01.2012
Сообщений: 104
Записей в блоге: 21
#1

запись в файл - C++

15.10.2013, 22:22. Просмотров 268. Ответов 5
Метки нет (Все метки)

Добрый день,
я с С++ не очень дружу. подскажите пожалуйста почему у меня в файл записывается последний символ каждого файла 2 раза? когда я файлы открывала fopen - в конце каждого файла запись шла лишнего символа (в моем случае "я"). Повтор последнего символа уже лучше =D, но все-равно я не могу понять откуда он берется.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
char Y;
    ifstream in("D://1//2.txt", ios::in);
    ofstream out("D://1//out.txt", ios::out);
    ifstream in1("D://1//1.txt", ios::in);
while (in)
{
in >> Y;
out << Y;
 
}
while (in1)
{
in1 >> Y;
out << Y;
 
}
 
in1.close();
    in.close();
    out.close();
    _getch();
    return 0;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 22:22     запись в файл
Посмотрите здесь:

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

запись в файл - C++
Как сделать, чтобы эта функция записывала именно символы в файл? у меня вместо символов квадратики if (wParam&gt;=0x041 || wParam&lt;=0x05A) ...

Запись в файл - C++
Подскажите, пожалуйста. Мне нужно создать файл и записать в него значения y=5*k, k изменяется в цикле от 0 до 10. Как это сделать? Спасибо.

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

Запись в файл - C++
Файл (пустой) действительно есть, и путь указан правильно, но выдается ошибка при открытии фаила. Делала всё по ...

запись в файл - C++
Выдается ошибка &quot;fout: необъявленный идентификатор&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &quot;stdafx.h&quot; using namespace...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
palva
2595 / 1817 / 260
Регистрация: 08.06.2007
Сообщений: 6,961
Записей в блоге: 4
15.10.2013, 22:34     запись в файл #2
Попробуйте так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
while (1)
{
    in >> Y;
    if(in) out << Y;
    else break;
}
while (1)
{
    in1 >> Y;
    if(in1) out << Y;
    else break;
}
Добавлено через 3 минуты
Лишний символ появляется, потому что выход из цикла появляется в начале тела цикла, а условие его окончания возникает уже в процессе выполнения тела цикла. Файл кончился, попытка чтения не удалась, но символ Y в выходной файл все равно пишется.
KellyDink
1 / 1 / 0
Регистрация: 04.01.2012
Сообщений: 104
Записей в блоге: 21
15.10.2013, 23:19  [ТС]     запись в файл #3
Я тоже так думала, но я пробовала с do while , но результат остается прежним
palva
2595 / 1817 / 260
Регистрация: 08.06.2007
Сообщений: 6,961
Записей в блоге: 4
15.10.2013, 23:24     запись в файл #4
Цитата Сообщение от KellyDink Посмотреть сообщение
но я пробовала с do while , но результат остается прежним
Конечно останется прежним. Условие выхода возникает в середине тела цикла. И нужно сразу выходить из цикла, а не выводить символ. Цикл еще можно так короче записать. Но это, наверно, менее понятно.
C++
1
while (in >> Y) out << Y;
KellyDink
1 / 1 / 0
Регистрация: 04.01.2012
Сообщений: 104
Записей в блоге: 21
16.10.2013, 06:15  [ТС]     запись в файл #5
менее понятно =) но безумно круто!
мне так нравится, когда код оказываеццо можно упрощать до таких вот строчек =)
спасибо!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2013, 09:46     запись в файл
Еще ссылки по теме:

Запись в файл - C++
Доброе утро. Прошу подсказать и по возможности помочь. Есть ли возможность хранить двухмерную матрицу в самом откампилированном файла (exe)...

Запись в файл - C++
Пытаюсь создать файл с именем, вводимым пользователем, и записать в него какие-то данные. Однако записываются только символы до пробела,...

Запись в файл - C++
Ребят помогите допилить запись в файл... :help: Записывает в файл лишние символы в конце! Может, можно как нибудь, реализовать запись не...

запись в файл! - C++
не могу понять как, не получается сохранить результат,который выводится на экран (массив чисел), в файл. #include &quot;percolation.h&quot; ...


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

Или воспользуйтесь поиском по форуму:
palva
2595 / 1817 / 260
Регистрация: 08.06.2007
Сообщений: 6,961
Записей в блоге: 4
16.10.2013, 09:46     запись в файл #6
Цитата Сообщение от palva Посмотреть сообщение
выход из цикла появляется в начале тела цикла
Здесь у меня опечатка. Имелось в виду "проверяется в начале тела цикла".
Yandex
Объявления
16.10.2013, 09:46     запись в файл
Ответ Создать тему
Опции темы

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