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. WCF 动态生成 不用增加引用两种方式

    一.fromwork2.0低版本方式 1,打开vs的命令工具 输入:wsdl wcf地址 + /l:cs /out:文件名 上面红色部分替换掉就行,文件名,你想叫什么文件名都行. 2,回车,生成的文件 ...

  2. GNU_makefile_template

    #g++ compiler: options # -std=c++0x enables ISO C++ 11 standard # -I.. pulls in the Version_test.h f ...

  3. schtasks命令遇见ERROR: The request is not supported.

    执行schtasks命令的环境,下文为机器1:windows server 2008 r2 工作任务(Schedules)所在的机器环境,下文为机器2:windows server 2003 当在机器 ...

  4. mysql分表与分区表

    mysql分表与分区表 转自:http://blog.51yip.com/mysql/949.html   一,什么是mysql分表,分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具 ...

  5. spoj 2

    筛选法找素数  数据范围很大  1 <= m <= n <= 1000000000  一开始不知道怎么做  查了一下 先筛选出40000内的素数 再依靠这些素数筛选题目要求的素数 # ...

  6. c++ 成员指针函数 实现委托----跨平台实现(复杂)

    牛逼: c++ 牵涉到的技术细节太多了,为了实现一个委托,他妈都搞到汇编里面去了... 总结 为了解释一小段代码,我就得为这个语言中具有争议的一部分写这么一篇长长的指南.为了两行汇编代码,就要做如此麻 ...

  7. gdb调试多线程程序总结

    阿里核心系统团队博客 http://csrd.aliapp.com/?tag=pstack Linux下多线程查看工具(pstree.ps.pstack) http://www.cnblogs.com ...

  8. mybatis怎样配置数据库集群

    场景:一个读数据源一个读写数据源. 原理:借助spring的[org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource] ...

  9. iOS 图片背景模糊效果

    iOS 图片背景模糊效果 1.使用CoreImage中的模糊滤镜 原始效果图如下: CoreImage的实现: - (void)viewDidLoad { [super viewDidLoad]; / ...

  10. Silverlight之Styles和Behaviors

    本文简介 1.定义简单的Style 2.应用Style到元素 3.动态加载Style资源文件 4.Style的继承 5.组织内编写Style(在元素内) 6.自动应用Style到指定类型元素 7.St ...