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

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

Войти
Регистрация
Восстановить пароль
 
lotos580
1 / 1 / 1
Регистрация: 25.05.2012
Сообщений: 60
#1

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

08.07.2014, 22:56. Просмотров 287. Ответов 1
Метки нет (Все метки)

Ошибка: на консоль выводиться дважды последнее прочтенное значение (в данном случае - 20). Подскажите, пожалуйста, как избежать данную проблему?
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
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;
 
int main()
{
    ofstream myFile1("file.bin", ios::binary);
    if(!myFile1)
    {
        cerr << "err1";
        exit(1);
    }
    for(int i = 0; i <= 20; i++)
    {
        myFile1.seekp(i * sizeof(i));
        myFile1.write(reinterpret_cast<char*>(&i), sizeof(i));
        cout << "sucess record #" << i << endl;
    }
    int a = 0;
    myFile1.close();
    
    ifstream myFile2("file.bin", ios::binary);
    if(!myFile2)
    {
        cerr << "err2";
        exit(1);
    }
    myFile2.seekg(0);
    while(!myFile2.eof())
    {
        myFile2.read(reinterpret_cast<char*>(&a), sizeof(a));
        cout << a << ' ';
    }
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2014, 22:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись бинарного файла - На консоль выводиться дважды последнее прочтенное значение (C++):

Вывод бинарного файла на консоль - C++
Имеется структура typedef struct { int n; char name; double price; int amountRealizedGoods; ...

Чтение и запись из файла в файл - символ в файле повторяется дважды - C++
При компиляции кода последний символ в файле повторяется дважды, что происходит? Как это исправить?? Помогите! #include &lt;iostream&gt; ...

Запись бинарного файла - C++
Чисто теоретически функция input должна была записать в файл аброкадабру(из-за двоичного режима(binary)), но к сожалению запись идёт такая...

Запись и считывание из бинарного файла - C++
Допустим я реализовываю АТД - контейнер. Там будет функция обновления (Все данные скопировать в файл на жестком дискке, а потом обратно)....

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

Запись, перезапись бинарного файла - C++
В 1 файле случайные числа, во второй записать те которые кратные 7 и 9. Подскажите почему не происходит запись во 2рой файл. #include...

1
nmcf
5685 / 4996 / 1703
Регистрация: 14.04.2014
Сообщений: 20,379
08.07.2014, 23:07 #2
Флаг конца файла устанавливается только после неудачного чтения, поэтому повтор.
Надо либо читать циклом for, вычислив количество элементов в файле по его длине, либо добавить проверку на eof() после 32-й строки.
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2014, 23:07
Привет! Вот еще темы с ответами:

Чтение/запись бинарного файла - C++
Надо проверить корректно ли работает стек. #include &quot;stack.h&quot; #include &lt;fstream&gt; #include &lt;iostream&gt; using namespace std; ...

Чтение и запись бинарного файла - C++
Добрый день! Есть задача прочитать с бинарного файла информацию, обработать ее и записать результат в бинарный файл. #include &quot;stdafx.h&quot;...

Запись и считование с бинарного файла - C++
Доброе утро всем! Учитель сказал переделать на бинарный файл. Но никак не пойму ка правильно ето осуществить. П.С. В тему не успеваю...

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


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

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

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