我正在编写一个下载多个文件的程序(目前只有 2 个)。我试图让它使用ProgressFunction
回调显示每次下载的进度条。我遇到的问题是我无法找出区分两个文件之间进度的方法。现在它正在两者之间切换。我曾尝试寻找任何进一步的文档,但似乎 API 链接在他们的网站上已损坏,除了一些基本示例之外没有太多其他内容。
//ProgressCalback
double ProgressCallBack(double dltotal, double dlnow, double ultotal, double ulnow){
double progress = (dlnow/dltotal) * 100;
std::ostringstream strs;
float percent = floorf(progress * 100) / 100;
strs << percent;
printf("%s\t%d\t%d\t%d\t%d\n", strs.str().c_str(),dltotal, dlnow, ultotal, ulnow);
return 0;
};
curlpp::options::ProgressFunction progressBar(ProgressCallBack);
request1.setOpt(new curlpp::options::Url(url1));
request1.setOpt(new curlpp::options::Verbose(false));
request1.setOpt(new curlpp::options::NoProgress(0));
request1.setOpt(progressBar);
我不完全确定我的代码的哪一部分是相关的,所以这里是与进度回调有关的部分。任何帮助,将不胜感激。