Работа с бинарным файлом

197
01 марта 2019, 08:40

Есть бинарный файл. Нужно сделать проверку на пустоту, и если false, то очистить его. Как реализовать? Вот код:

#include <iostream>
#include <cstdlib>
#include <fstream>
using namespace std;
int main(){
    ofstream work;
    ifstream work_2;
    char answer;
    ofstream work("test.txt", ios::binary);
ifstream work_2;

if (work_2.read("test.txt" ,ios::binary | ios::in)!=NULL){
    cout << " Вы действительно хотите удалить старый файл и вместо него создать новый?" << endl;
    cout << " 1-Да" << endl;
    cin >> answer;
    if(answer=='1'){
        work_2.open("test.txt", ios::binary | ios::out);
        cout << " Новый файл успешно создан. Для продолжения работы с файлом перейдите в меню." << endl;
        cout << " Для продолжения нажмите любую клавишу." << endl;
        getch();
        work_2.close();
    }
}
else{
    cout << " Вы отказались от создания нового файла, поэтому будете перемещены в Главное меню." << endl;
    cout << " Для продолжения нажмите любую клавишу." << endl;
    getch();
}
//work_2.close();
work.close();
return 1;
}
Answer 1

Если я правильно понимаю, то достаточно просто его создать пустым заново...

{
    ofstream Out("filename.ext");
}

По умолчанию - это именно то поведение, которое надо.

READ ALSO
towupper для национальных страниц кодировки

towupper для национальных страниц кодировки

Есть решения по типу towupper для национальных страниц кодировки? из типа LPWSTR (wchar_t)

142
Удаление многомерного массива

Удаление многомерного массива

Учебник- практикум Павловская ТА

170
Mac OS IntelliJ IDEA не работает Gradle

Mac OS IntelliJ IDEA не работает Gradle

Mac OS IntelliJ IDEA не работает Gradle На windows все норм собирается, последняя версия среды

152
Проблемы с кодировками Java

Проблемы с кодировками Java

Имеются файлы с кириллицей в названии и возможно в содержимом файловКодировка файлов windows-1251 (при этом кодировка файла исходника UTF-8, но его...

178