libcurl出现CURLcode 23 CURLE_WRITE_ERROR错误
来源:互联网 发布:雪鹰领主法器进阶数据 编辑:程序博客网 时间:2024/05/16 12:47
使用libCURL时调用curl_easy_perform返回的CURLcode为23错误。
查看得知是CURLE_WRITE_ERROR,写文件错误。
估计是使用curl_easy_setopt时设置CURLOPT_WRITEFUNCTION或者CURLWRITEDATA时有问题,结果找了半天也没有发现。
最后发现是够早的WRITEFUNC有问题:
错误:
size_t function(const void *ptr, size_t size, size_t nmemb, const void *stream)
{
… … … …
fwrite(ptr, size, nmemb, (FILE *)stream);
… … … …
return 0;
}
返回值出错,正确的返回值应该是文件写入的大小
return size * nmemb;
否则就会报上面的错误。
正确函数:
size_t function(const void *ptr, size_t size, size_t nmemb, const void *stream)
{
int ret;
… … … …
ret = fwrite(ptr, size, nmemb, (FILE *)stream);
… … … …
return ret;
}
这样,在fwrite正确执行时,就不会报错了。
- libcurl出现CURLcode 23 CURLE_WRITE_ERROR错误
- libcurl出现CURLcode 23 CURLE_WRITE_ERROR错误 以及每次抓取网页长度不一致问题
- CURLE_WRITE_ERROR
- 使用libcurl库在手机上出现CURL_WRITE_ERROR(23)错误
- libcurl错误
- libcurl错误码
- libcurl 使用 链接错误
- Libcurl使用OpenSSL编译出现undefined reference to `COMP_CTX_free'错误备忘
- libcurl 使用的一个错误
- libcurl
- libcurl
- libcurl
- libcurl
- libcurl
- libcurl
- libcurl
- libcurl
- libcurl
- 什么是B帧、I帧和P帧?B帧、I帧和P帧是什么意思?
- 正则表达式同时匹配中英文_,还控制长度
- 三个和尚的故事 与 项目机构管理
- 自定义TabBarController
- Windows批处理程序的书写来处理文本
- libcurl出现CURLcode 23 CURLE_WRITE_ERROR错误
- boost序列化
- new ActiveXObject("Scripting.FileSystemObject") 时抛出异常,解决方案方法
- log4j配置
- 10044-Erdos number Time limit exceeded
- Cocos2d游戏开发常用工具集合
- Binary XML file line : Error inflating class <unknown> 解决
- 一个人的冲锋
- 认识大数据分析