Hi Leute,
ich stehe gerade vor dem Problem, dass ich einen binär Datei in einen String auslesen muss. Da die Datei bereits an der vierten Stelle ein \0 enthält ist der String auch eben nur drei Stellen lang.
Ich benötige den Rückgabewert als String weil ich die Rückgabe später so verarbeite:
Weiss jemand einen Ausweg?
Ich möchte dann doch nicht dass ganze Programm mschreiben, wil alles auf diesem Rückgabe String aufbaut
Greetz Skini
ich stehe gerade vor dem Problem, dass ich einen binär Datei in einen String auslesen muss. Da die Datei bereits an der vierten Stelle ein \0 enthält ist der String auch eben nur drei Stellen lang.
C++:
char getBinaryFile(string pathToFile){
long len;
char *content;
FILE *binary_file = fopen(("CDir" + pathToFile).c_str(),"rb");
if(!binary_file){return 0;}
fseek(binary_file,0,SEEK_END); //go to end
len=ftell(binary_file); //get position at end (length)
fseek(binary_file,0,SEEK_SET); //go to beg.
content=(char *)malloc(len+1); //malloc buffer
fread(content,len,1,binary_file); //read into buffer
fclose(binary_file);
return (char)content;
}
C++:
//...
binary_file_content = getBinaryFile(path);
//..
string r_buffer = header_part1 + binary_file_content + header_part2;
return r_buffer;
Ich möchte dann doch nicht dass ganze Programm mschreiben, wil alles auf diesem Rückgabe String aufbaut

Greetz Skini