Как сохранить изображение с url в c++?

Пользователь

от hattie , в категории: C/C++ , год назад

Как сохранить изображение с url в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от yasmine , год назад

@hattie 

Для сохранения изображения с URL в C++, вам нужно использовать библиотеку для загрузки данных из сети. Одна из таких библиотек - это libcurl.


Вот пример кода, который использует libcurl для загрузки изображения по URL и сохранения его в файл:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
#include <curl/curl.h>
#include <fstream>

int main()
{
    CURL *curl;
    CURLcode res;
    std::ofstream imageFile("image.jpg", std::ios::binary);

    curl_global_init(CURL_GLOBAL_DEFAULT);

    curl = curl_easy_init();
    if (curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/image.jpg");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, fwrite);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &imageFile);

        res = curl_easy_perform(curl);

        curl_easy_cleanup(curl);
    }

    imageFile.close();

    curl_global_cleanup();

    return 0;
}


В этом примере кода используется функция curl_easy_setopt, чтобы задать параметры запроса, включая URL, функцию записи данных и данные для записи. Затем используется функция curl_easy_perform, чтобы выполнить запрос.


После успешного выполнения запроса изображение сохраняется в файл "image.jpg" в бинарном режиме.