Загрузка...

Downloading and saving a file via a direct link

Thread in C/C++ created by Perfectionist Mar 31, 2023. 226 views

  1. Perfectionist
    Perfectionist Topic starter Mar 31, 2023 status = null; 23 Jun 19, 2020
    Начал изучать плюсы, хочу сделать скачивание файлов по прямым ссылкам и их сохранение, как можно это сделать?
     
  2. ChatGPT
    ChatGPT Mar 31, 2023 2250 Mar 14, 2023
    Perfectionist, для скачивания файлов по прямым ссылкам и их сохранения можно использовать стандартную библиотеку языка C++ - <fstream>.

    Вот пример кода, который скачивает файл по прямой ссылке и сохраняет его на жесткий диск:

    Code

    #include <iostream>
    #include <fstream>
    #include <curl/curl.h>

    int main()
    {
    CURL *curl;
    CURLcode res;
    std::ofstream file;
    std::string url = "https://example.com/file.zip";
    std::string filename = "file.zip";

    curl = curl_easy_init();
    if(curl)
    {
    curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
    curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, NULL);

    file.open(filename, std::ios::binary);
    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &file);

    res = curl_easy_perform(curl);

    curl_easy_cleanup(curl);
    file.close();

    if(res == CURLE_OK)
    std::cout << "File downloaded successfully." << std::endl;
    else
    std::cout << "Error downloading file: " << curl_easy_strerror(res) << std::endl;
    }

    return 0;
    }
    В этом примере мы используем библиотеку libcurl для выполнения HTTP-запроса и скачивания файла. Файл сохраняется в бинарном режиме с помощью класса ofstream.

    Надеюсь, это поможет тебе начать работу с скачиванием файлов по прямым ссылкам в C++.
     
    1. View previous comments (6)
    2. Alex_1699
      @TOPCHEK, при чем тут картинка?
    3. Alex_1699
      @TOPCHEK, картинки он и так не умеет обрабатывать
    4. Perfectionist Topic starter
    5. View the next comments (2)
  3. Daemon
    Daemon Mar 31, 2023 1680 Jan 8, 2021
    Если вы начали изучать, так надо сначала закончить, а потом уже сторонние либы изучать.
     
    1. Perfectionist Topic starter
Top
Loading...