Hey,
ich würde gerne wissen, ob dieser Code der schnellstmögliche ist oder ob es da bessere Varianten gibt. Bisher habe ich immer alle Buffer, die eine variable größe haben, mit std::vector modelliert.
Ausgeben könnte ich den Code dann beispielsweise über
freue mich auf eure Meinungen und Erfahrungen
ich würde gerne wissen, ob dieser Code der schnellstmögliche ist oder ob es da bessere Varianten gibt. Bisher habe ich immer alle Buffer, die eine variable größe haben, mit std::vector modelliert.
Code:
std::vector<char> buffer;
int fpos = 0; //aktuelle Position in der binären Dateien
if (HttpQueryInfo(hFile, HTTP_QUERY_CONTENT_LENGTH | HTTP_QUERY_FLAG_NUMBER, &fileSize, &dwBufferLength, NULL) && fileSize > 0)
dwNumberOfBytesToRead = fileSize;
do {
if (!fileSize) buffer.resize(dwNumberOfBytesToRead + fpos);
InternetReadFile(hFile, &(buffer.at(fpos)), dwNumberOfBytesToRead, &dwNumberOfBytesRead);
fpos += dwNumberOfBytesRead;
} while (dwNumberOfBytesRead);
if(!fileSize) buffer.resize(fpos); //shrink to full size
Code:
for (char & c : buffer) std::cout << c;