一只海星的主页

curl下载简易进度条显示

背景

curl下载文件比较方便,sample里的进度条打印比较鸡肋,网上搜了一下C语言打印进度条,随便改改,就ok了,代码贴起来!

curl 回调函数进度打印输出

int download_progress(char *progress_data,
                            double t, /* dltotal */
                            double d, /* dlnow */
                            double ultotal,
                            double ulnow){
    static char bar[120];
    const char *lable = "|/-\";
    int i =  d*100.0/t;
    printf("%s [%-100s][%d%%][%c]\r", progress_data, bar, i, lable[i % 4]);
    //fflush(stdout);
    bar[i] = '>';
    i++;
    bar[i] = 0;
    return 0;  
}

curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, download_progress);

效果


创作不易,欢迎点赞和关注,转载请注明出处!!!
更多精彩内容,欢迎访问一只海星的主页

发表评论

邮箱地址不会被公开。 必填项已用*标注