Problem beim Laden-Speichern von Binärdateien
-
Hallo liebe C++ Programmierer,
habe ein programm geschrieben zum öfnen von binärdateien unbekannter größe, und zum speichern derselbigen. bei selbst angelegten dateien via programm selbst, oder texteditor öffnet das programm anbei die datei und speichert sie identisch wieder ab ohne das sie dabei verändert wird. dies funktioniert aber nicht mit .gif dateien .jpgs und eigentlich allen anderen dateiformaten die doch eigentlich auch binärdateien sind?
warum nicht? was muß ich modifizieren damit ich JEDE datei als binärezeichen folge öffnen und speichern kann?
weiß jemand rat? ich bin um jeden Tip sehr dankbar,
mfg
Markus G. alias MrCPU :xmas1:Hier das programm:
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>struct stat results;
char arry1[53687091];
char arry2[53687091];void main(void)
{//größe ermitteln
stat("c:\\test.bin",&results);
cout << results.st_size << endl << endl;// zum Lesen öffnen
FILE *Datei = fopen("c:\\test.bin","r");
// Array aus der Datei lesen und ausgeben
fread(arry1,sizeof(arry1[0]),results.st_size,Datei);for(int i=0;i<20;i++)
{
cout << arry1[i] << '\n';
}// Schließen der Datei
fclose(Datei);// Datei c:\test.bin zum Schreiben öffnen
Datei = fopen("c:\\test.bin","w");//schreiben
fwrite(arry1,sizeof(arry1[0]),results.st_size,Datei);// Datei schließen
fclose(Datei);
}
-
Versuch mal.
FILE *Datei = fopen("c:\\test.bin","rb");
Datei = fopen("c:\\test.bin","wb");