1. #include"curl/curl.h"
  2. #pragma  comment(lib,"libcurl_imp.lib")
  3. bool HelloWorld::init()
  4. {
  5. CCLayer::init();
  6. CURL *pCurl;
  7. CURLcode nResCode;
  8. pCurl = curl_easy_init();//初始化CURL取得初始化成功后的CURL指针
  9. if (pCurl != NULL)
  10. {
  11. FILE *pFile;
  12. pFile = fopen("XXX.jpg", "wb");
  13. curl_easy_setopt(pCurl,CURLOPT_URL,"http://ww1.sinaimg.cn/large/7f32a2c8jw1e8lyw03zpbj20c8d1ynpd.jpg");
  14. if(pFile != NULL)
  15. curl_easy_setopt(pCurl,CURLOPT_FILE,pFile);                   //指定写入的文件指针
  16. curl_easy_setopt(pCurl, CURLOPT_WRITEFUNCTION, pWriteCallback);//设置写数据的回调函数
  17. curl_easy_setopt(pCurl, CURLOPT_VERBOSE, TRUE);                //让CURL报告每一件意外的事情
  18. curl_easy_setopt(pCurl, CURLOPT_TIMEOUT, 60);                  //设置超时时间
  19. curl_easy_setopt(pCurl, CURLOPT_NOPROGRESS,0L);
  20. curl_easy_setopt(pCurl, CURLOPT_PROGRESSFUNCTION, HelloWorld::DownProgresss);//指定显示进度的回调函数
  21. nResCode = curl_easy_perform(pCurl);//执行上面设定的动作并返回状态码
  22. curl_easy_cleanup(pCurl);           //释放相关资源
  23. fclose(pFile);
  24. nResCode == CURLE_OK ? CCLOG("DownLoad Success") : CCLOG("CODE: %d",nResCode);
  25. }
  26. return true;
  27. }
  28. size_t HelloWorld::pWriteCallback(void *pData, size_t n, size_t nDataSize, FILE *stream)
  29. {
  30. size_t nWritten = fwrite(pData,n,nDataSize,(FILE *)stream);
  31. return nWritten;
  32. }
  33. int HelloWorld::DownProgresss(void* clientp,double fDownLoadTotal,double fDownLoaded,double fUpTotal,double fUpLoaded)
  34. {
  35. if (fDownLoaded >= 0 && fDownLoadTotal != 0)
  36. CCLOG("%6.2f%%\n", 100*fDownLoaded/fDownLoadTotal);//下载百分比
  37. return 0;
  38. }

OK最后附上本工程的下载地址需要的可以去下载研究研究http://t.cn/8Fp5zUD

本人郑重声明如下 一、本文来自CSDN博客,传送门:http://BlOG.CSDN.NET/yirancpp 二、All Rights Reserved. 任何个人或网站转载本文时不得移除本声明. 三、不得对文章进行修改,除非明确说明.同时欢迎大家评论转载和分享.

【转】 COCOS2D-X之使用CURL下载图片的一个简单Demo的更多相关文章

  1. PHP curl下载图片的方法

    PHP curl下载图片的方法 <pre> <?php $images = [ 'http://wx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTKPkia3rx ...

  2. shell curl 下载图片并另存为(重命名)

    curl -o fuck.png http://img30.360buyimg.com/imgzone/jfs/t19711/232/1837927836/150222/e4cd87bb/5ad990 ...

  3. php curl下载图片 URL地址

    <?php $url = 'http://mf1905.com/upload/video_img/df3074c98ec5124ad47c52ff59f74e04_middle.jpeg'; f ...

  4. linux 下载 图片

    linux  curl  下载图片 l=[] with open('ee.html','r',encoding='utf-8') as fr: for i in fr: ii=i.split('&qu ...

  5. cocos2d-x lua 使用http(下载图片, POST JSON)

    cocos2d-x lua 使用http(下载图片, POST JSON) version: cocos2d-x 3.6 1.使用http post json与服务器交互 require(" ...

  6. PHP——下载图片到本地代码

    <?php //获取网页图片 $url = "http://qlogo2.store.qq.com/qzone/393183837/393183837/50"; $curl ...

  7. C++根据图片url下载图片

    需要使用到URLDownloadToFile()函数,该函数在头文件<urlmon.h>中声明. URLDownloadToFile()函数的定义如下: HRESULT URLDownlo ...

  8. .net 已知图片的网络路径,通过浏览器下载图片

    没什么技术含量,主要留给自己查找方便: 如题,知道图片的完整网络路径的情况下,在浏览器中下载图片的实现: 下面这个方法实现的是把图片读取为byte数组: private byte[] GetImage ...

  9. (TODO:)下载图片,报错:warning: could not load any Objective-C class information from the dyld shared cache. This will significantly reduce the quality of type information available.

    想使用NSInvocationOperation下载图片,然而并没有下载下来, NSData为nil, 还有报错:(打断点就报错) warning: could not load any Object ...

随机推荐

  1. To change the sharepoint CA port

    Set-SPCentralAdministration -Port <port number> to fix the error: Got this error: Failed to re ...

  2. eclipse *.vm 文件,语法高亮

    eclipse *.vm 文件,语法高亮按如下方式不起作用,原因不明.设置文件打开时使用的编辑器General>>Editors>>File Associations 下述方试 ...

  3. 3123 高精度练习之超大整数乘法 - Wikioi

    题目描述 Description 给出两个正整数A和B,计算A*B的值.保证A和B的位数不超过100000位. 输入描述 Input Description 读入两个用空格隔开的正整数 输出描述 Ou ...

  4. MVC 自定义AuthorizeAttribute 实现权限验证

    MVC内置的AuthorizeFilter先于Action/Result过滤器执行,为网站权限验证提供了很好的一套验证机制. 通过自定义的AuthorizeAttribute可以实现对用户权限的验证. ...

  5. Java Swing 快捷键

    Java  Swing 快捷键 给Java Swing 编程中按钮或者其他组件事件添加快捷键的方法: Component.setAccelerator(KeyStroke.getKeyStroke(‘ ...

  6. Tiny6410 交叉编译helloworld程序

    在工作目录下建立helloworld.c文件 #include <stdio.h> main() { printf("helloworld!\n"); } 保存关闭后. ...

  7. xcode 树形管理 cocos2d-x的资源

    把资源以目录的形式加入xcode中, 同时, 在加入时, 选择"Create Folder References for any  added folders", 而不是默认的&q ...

  8. minicom 配置

    问题: 1:不相应按键,只有打印 Hardware Flow Control 选择NO minicom显示中文的设置:              env LANG=en_US minicom   可以 ...

  9. thinkphp URL相关

    具体详见tp文档. 此处仅做学习笔记. 后缀配置: // 模板文件后缀名 'TMPL_TEMPLATE_SUFFIX'=>'.html', // 伪静态文件后缀名 'URL_HTML_SUFFI ...

  10. SQLite入门与分析(二)---设计与概念

    写在前面:谢谢各位的关注,没想到会有这么多人关注.高兴的同时,也感到压力,因为我接触SQLite也就几天,也没在实际开发中用过,只是最近项目的需求才来研究它,所以我很担心自己的文章是否会有错误,误导别 ...