043
10.09.2005, 18:48 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
C++: |
FILE *in = fopen("D:\\test.wav", "rb"); if(!in) // fehler datei nicht gefunden/sonstwas fseek(in, 0, SEEK_END); unsigned long length = ftell(in); fseek(in, 0, SEEK_SET);
char *buffer = new char[length+1]; // ok vorsicht wenn die datei zu groß ist ;) if(!buffer) // blubb!
fread(buffer, 1, length, in); // parameter hoffentlich richtig rum -.- fclose(in);
buffer[length] = '\0';
if(send(s, (char*)&length, sizeof(long), 0) != sizeof(long)) // fehler beim senden der größe
unsigned long offset = 0; while(offset < length) { int sd = send(s, (buffer + offset), length - offset, 0); offset += sd; }
delete[] buffer;
|
C++: |
unsigned long length = 0;
if(recv(s, &size, sizeof(length), 0) != sizeof(length)) // error, größe empfangen fehlgeschlagen, bzw unvollständig
FILE *out= fopen("D:\\output.wav", "wb"); if(!out) // fehler datei nicht schreibbar/sonstwas
char *buffer = new char[length+1]; // ok vorsicht wenn die datei zu groß ist ;) if(!buffer) // blubb!
unsigned long offset = 0; while(offset < length) { int rd = recv(s, (buffer + offset), length - offset, 0); offset += rd; }
buffer[length] = '\0';
fread(buffer, 1, length, out); // parameter hoffentlich richtig rum -.- fclose(out);
delete[] buffer;
|
-- class God : public ChuckNorris { }; Dieser Post wurde am 10.09.2005 um 18:49 Uhr von FloSoft editiert. |