curl 以http方式读取文件并保存
来源:互联网 发布:淘宝开店需要多少保证金 编辑:程序博客网 时间:2024/05/21 10:09
以下为主函数代码:
void main(){ //initialization CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl){ //define file for store downloaded file FILE* fp; fp = fopen( "c:/test.rar", "wb"); string fileurl = "http://localhost/files/test.rar"; curl_easy_setopt(curl, CURLOPT_URL, fileurl.c_str() ); /* Define our callback to get called when there's data to be written */ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, curlCallBackFileWrite); /* Set a pointer to our struct to pass to the callback */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp); res = curl_easy_perform(curl); //always close file fclose(fp); } } //always cleanup curl_easy_cleanup(curl);}
以下为 curlCallBackFileWrite 回调处理:
static size_t curlCallBackFileWrite(void *buffer, size_t size, size_t nmemb, void *stream){ int written = fwrite(buffer, size, nmemb , (FILE *)stream); return written; }
完。
这当然也可以存储页面文件。
curl 的功能还有很多,比如FTP,SSL等,可以参考官方示例
链接:http://curl.haxx.se/libcurl/c/example.html
- curl 以http方式读取文件并保存
- Java读取远程文件[Http,ftp],并保存
- C#以HTTP方式导出XML类型列,并弹出保存框
- C++map容器里的所有内容以二进制方式保存与读取到文件
- 例3:保存所有的Person对象到文件并以对象的方式读出来
- 读取文件夹下的子文件夹的所有文件名,并保存成以子文件命名的txt文件
- 读取matlab某个路径下的“.mat”文件,改变文件中的内容,并以原名字,变量保存
- .net读取图像并保存为文件
- PHP读取远程文件并保存
- php5.6关于curl以@方式上传文件的解决方案
- 浏览器以二进制流方式读取文件
- android以流的方式读取文件
- tp以post方式提交表单并保存数据
- 以字典方式生成mnist_model_graph.pb并保存mnist图片
- 以二进制方式打开文件并显示
- Java从网络(http)读取图片并保存至本地
- 文件读取——以字符方式读取文本文件
- matlab中读取Mat文件,以图片形式保存
- 使用序列化进行Clone
- pnfs执行truncate失败的BUG解析
- Asp.net中的Timer与updatepanel控件
- Dialog学习笔记
- Linux的Service/Daemon
- curl 以http方式读取文件并保存
- Oracle hash join
- HP MSA2000高性能双机容错方案
- 在tableview索引中显示搜索符号的方法
- [Linux C]递归遍历指定目录下的子目录和文件
- YES!产品经理(上、下册)
- 一致性Hash算法
- 什么是网站的空间和域名
- android 上调试动态库方法