wxFTP wxFile или как дописать в конец ф-ла
Posted: Sat Jan 21, 2012 8:51 am
Как можно из wxInputStream дописывать в конец ф-ла по кускам не зная изначально конечный размер ф-ла и что делать если последний кусок выйдет меньше размером, чем 128?
Code: Select all
wxInputStream *in = ftp.GetInputStream(file);
if( !in ){
wxMessageBox(wxT("Не могу открыть файл"));
return;
} else{
char *data = new char[ 128 ];
wxFile file_on_disk;
int t=0;
do{
in->Read( data, 128 ).LastRead();
if(t == 0)
file_on_disk.Create(file);
else
file_on_disk.Open(file);
file_on_disk.Seek(t);
file_on_disk.Write(data, 128);
file_on_disk.Close();
t += 128;
// next 128 bytes are now in the buffer
// ... do something ...//ха-ха
} while( in->LastRead() != 0 );
delete [] data;
}
delete in;