使用libcurl获取FTP服务器上的文件大小,可以通过以下步骤实现:
以下是一个示例代码:
#include <stdio.h>
#include <curl/curl.h>
size_t write_callback(void* contents, size_t size, size_t nmemb, void* userp) {
// 回调函数用于处理FTP服务器的响应,这里可以解析响应获取文件大小信息
return size * nmemb;
}
int main() {
CURL* curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if (curl) {
// 设置FTP服务器信息
curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/file.txt");
curl_easy_setopt(curl, CURLOPT_USERPWD, "username:password");
// 设置回调函数
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
// 设置FTP命令
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "SIZE file.txt");
// 执行FTP请求
res = curl_easy_perform(curl);
if (res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
// 清理资源
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}
在上述示例代码中,需要将"ftp://example.com/file.txt"替换为实际的FTP服务器地址和文件名,"username:password"替换为实际的用户名和密码。
推荐的腾讯云相关产品:腾讯云对象存储(COS),用于存储和管理文件、图片、视频等各种类型的数据。产品介绍链接地址:https://cloud.tencent.com/product/cos
领取专属 10元无门槛券
手把手带您无忧上云