【转】 COCOS2D-X之使用CURL下载图片的一个简单Demo
- #include"curl/curl.h"
- #pragma comment(lib,"libcurl_imp.lib")
- bool HelloWorld::init()
- {
- CCLayer::init();
- CURL *pCurl;
- CURLcode nResCode;
- pCurl = curl_easy_init();//初始化CURL取得初始化成功后的CURL指针
- if (pCurl != NULL)
- {
- FILE *pFile;
- pFile = fopen("XXX.jpg", "wb");
- curl_easy_setopt(pCurl,CURLOPT_URL,"http://ww1.sinaimg.cn/large/7f32a2c8jw1e8lyw03zpbj20c8d1ynpd.jpg");
- if(pFile != NULL)
- curl_easy_setopt(pCurl,CURLOPT_FILE,pFile); //指定写入的文件指针
- curl_easy_setopt(pCurl, CURLOPT_WRITEFUNCTION, pWriteCallback);//设置写数据的回调函数
- curl_easy_setopt(pCurl, CURLOPT_VERBOSE, TRUE); //让CURL报告每一件意外的事情
- curl_easy_setopt(pCurl, CURLOPT_TIMEOUT, 60); //设置超时时间
- curl_easy_setopt(pCurl, CURLOPT_NOPROGRESS,0L);
- curl_easy_setopt(pCurl, CURLOPT_PROGRESSFUNCTION, HelloWorld::DownProgresss);//指定显示进度的回调函数
- nResCode = curl_easy_perform(pCurl);//执行上面设定的动作并返回状态码
- curl_easy_cleanup(pCurl); //释放相关资源
- fclose(pFile);
- nResCode == CURLE_OK ? CCLOG("DownLoad Success") : CCLOG("CODE: %d",nResCode);
- }
- return true;
- }
- size_t HelloWorld::pWriteCallback(void *pData, size_t n, size_t nDataSize, FILE *stream)
- {
- size_t nWritten = fwrite(pData,n,nDataSize,(FILE *)stream);
- return nWritten;
- }
- int HelloWorld::DownProgresss(void* clientp,double fDownLoadTotal,double fDownLoaded,double fUpTotal,double fUpLoaded)
- {
- if (fDownLoaded >= 0 && fDownLoadTotal != 0)
- CCLOG("%6.2f%%\n", 100*fDownLoaded/fDownLoadTotal);//下载百分比
- return 0;
- }
OK最后附上本工程的下载地址需要的可以去下载研究研究http://t.cn/8Fp5zUD
本人郑重声明如下 一、本文来自CSDN博客,传送门:http://BlOG.CSDN.NET/yirancpp 二、All Rights Reserved. 任何个人或网站转载本文时不得移除本声明. 三、不得对文章进行修改,除非明确说明.同时欢迎大家评论转载和分享.
【转】 COCOS2D-X之使用CURL下载图片的一个简单Demo的更多相关文章
- PHP curl下载图片的方法
PHP curl下载图片的方法 <pre> <?php $images = [ 'http://wx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTKPkia3rx ...
- shell curl 下载图片并另存为(重命名)
curl -o fuck.png http://img30.360buyimg.com/imgzone/jfs/t19711/232/1837927836/150222/e4cd87bb/5ad990 ...
- php curl下载图片 URL地址
<?php $url = 'http://mf1905.com/upload/video_img/df3074c98ec5124ad47c52ff59f74e04_middle.jpeg'; f ...
- linux 下载 图片
linux curl 下载图片 l=[] with open('ee.html','r',encoding='utf-8') as fr: for i in fr: ii=i.split('&qu ...
- cocos2d-x lua 使用http(下载图片, POST JSON)
cocos2d-x lua 使用http(下载图片, POST JSON) version: cocos2d-x 3.6 1.使用http post json与服务器交互 require(" ...
- PHP——下载图片到本地代码
<?php //获取网页图片 $url = "http://qlogo2.store.qq.com/qzone/393183837/393183837/50"; $curl ...
- C++根据图片url下载图片
需要使用到URLDownloadToFile()函数,该函数在头文件<urlmon.h>中声明. URLDownloadToFile()函数的定义如下: HRESULT URLDownlo ...
- .net 已知图片的网络路径,通过浏览器下载图片
没什么技术含量,主要留给自己查找方便: 如题,知道图片的完整网络路径的情况下,在浏览器中下载图片的实现: 下面这个方法实现的是把图片读取为byte数组: private byte[] GetImage ...
- (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 ...
随机推荐
- seo 优化 仅针对 来拍呀www.laipaiya.com(一)
加入百度统计代码:http://tongji.baidu.com/ 查看百度统计优化分析->seo建议 对每个页面的meta标签做修改 首页 title :来拍呀 - | 折扣好房你就来拍呀 k ...
- Linux VM 设置静态ip地址上网
因为是路由器共享上网,VM每次都是通过DHCP方式自动获取ip地址,连接Linux VM时ip地址经常变,很麻烦.现在把VM设置静态ip的方法总结一下,以免以后忘了. 1. VM上网方式设置为桥接. ...
- Arcgis投影变换后图像变深的问题
首先投影时,重采样方式选择nearest最邻近采样法,不改变投影后图像的DN值。 然后双击投影后图像,在符号系统中选择RGB——拉伸类型改为:无(默认是标准差拉伸)
- GNU_makefile_template
#g++ compiler: options # -std=c++0x enables ISO C++ 11 standard # -I.. pulls in the Version_test.h f ...
- EXTJS 4.2 资料 控件textfield中fieldLabel去掉冒号,控件label的长度
代码: labelSeparator: '', // 去掉laebl中的冒号 labelWidth: 10,//控件label的长度
- Hibernate从入门到精通(六)一对一双向关联映射
在上次的博文Hibernate从入门到精通(五)一对一单向关联映射中我们讲解了一下一对一单向关联映射,这次我们继续讲解一下与之对应的一对一双向关联映射. 一对一双向关联 与一对一单向关联映射所不同的的 ...
- linux内核分析之进程地址空间管理
1.struct task_struct 进程内核栈是操作系统为管理每一个进程而分配的一个4k或者8k内存大小的一片内存区域,里面存放了一个进程的所有信息,它能够完整的描述一个正在执行的程序:它打开的 ...
- ubuntu下安装GTK过程
GTK的安装过程比较繁琐,以前也安装过,但没有记录下来,Google一下记录下来备用. 利用此方法成功在ubuntu12.04下安装GTK 2.24.10 1.安装gcc/g++/gdb/make 等 ...
- java第五课:方法
方法交换位置的三个步骤:1.把第一个盒子里的东西拿出来,放到一边2.把第二个盒子里的东西放到第一个盒子里3.捡起刚刚放到一边的东西,放到第二个盒子里 值传递:实际参数将内部保存的值,复制给方法的参数. ...
- 读书笔记 (一) ———Fundamentals of Multiagent Systems with NetLogo Examples by Prof. Jose M Vidal
在网上发现Prof. Jose M Vidal用NetLogo仿真Multi-agent system的视频,随后下载他的著作Fundamentals of Multiagent Systems wi ...