Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
#1

Скопировать изображение из интернете - C++

21.10.2013, 14:18. Просмотров 473. Ответов 5
Метки нет (Все метки)

Здорова господа!!!

Есть изображение, которое находится по адресу: http://upload.wikimedia.org/wikipedi..._diversity.png .

Мне нужно его скопировать себе на диск.
Вот пытаюсь его скопировать с помощью файловых потоков, но ничего не получается, вот код:
C++
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
30
31
32
#include <cstdio>
#include <iostream>
using std::cout;
using std::endl;
#include <fstream>
using std::ofstream;
using std::ifstream;
 
//подключаем curl
#include "curl/curl.h"
#pragma comment(lib,"curllib.lib")
 
int main()
{
    ifstream ifs("http://upload.wikimedia.org/wikipedia/commons/thumb/1/14/Animal_diversity.png/265px-Animal_diversity.png",ifstream::in|ifstream::binary);
    if(!ifs)
    {
        cout <<"don't open file"<<endl;
        exit(1);
    }
 
    ofstream ofs("265px-Animal_diversity.png",ofstream::out|ofstream::binary);
    if(!ofs)
    {
        cout <<"don't open file2"<<endl;
        exit(1);
    }
 
    ofs <<ifs.rdbuf()<<endl;
    
    return 0;
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2013, 14:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Скопировать изображение из интернете (C++):

BitBlt. Скопировать изображение сначала из SecondMemhdc в Memhdc, а затем из него в hdc - C++
HDC hdc, Memhdc, SecondMemhdc; HBITMAP picture; picture = (HBITMAP) LoadImage(0,&quot;C:\\picture.bmp&quot;,IMAGE_BITMAP, 16, 16,...

Вывести множество цифр, входящих в изображение числа N, которые не входят в изображение числа M - C++
Помогите пожалуйста Сама задача &quot; Пусть заданы два натуральных числа N и M. Составить программу, которая выводила множество цифр,...

Скопировать изображение из Турбо Паскаль. - Turbo Pascal
Как с турбо паскаля при загрузке програмы с графиком, скопировать график или картинку сним в word или в photoshop? Либо как зделать так...

Скопировать изображение с монитора в буфер - Turbo Pascal
1. Очистить экран монитора, и, при необходимости, установить цвет фона. 2. Вывести одно или несколько графических изображений...

Скопировать изображение из Panel в Image. - Delphi
Здравствуйте. Могли бы подсказать, как можно забрать изображение из panel и поместить его в image?

Скопировать изображение из одного PictureBox-а в другой - C#
Добрый день, в одном пикчербоксе есть изображение. Надо скопировать его в другой пикчербокс. Пробовал варианты: PictureBox p =...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
21.10.2013, 14:20 #2
ninja2, А причем тут файловые потоки? И зачем подключен curl, если он не используется? Загружаем данные с адреса, сохраняем в файл, PROFIT.
1
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
21.10.2013, 14:21  [ТС] #3
Как скопировать изображение из интернета? Например в пхп функции которыми копировались файлы ими можно было и изображения из интернета копировать, если не ошибаюсь, а тут так не работает.
0
0x10
21.10.2013, 14:22
  #4

Не по теме:

При этом в соседней теме:

Цитата Сообщение от ninja2 Посмотреть сообщение
Ну я от глубок в познаниях

3
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
21.10.2013, 14:22 #5
ninja2, А для этого уже надо изучать язык. Если взяли curl - им и пользуйтесь. Аналогично, есть разные библиотеки для этого (в стандарте функций для работы с сетью нету).
1
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
21.10.2013, 14:48  [ТС] #6
Цитата Сообщение от ForEveR Посмотреть сообщение
А причем тут файловые потоки?
В Пхп можно было функцией copy копировать отовсюду файлы, хоть с диска хоть с интернета, с любого адреса.
Цитата Сообщение от ForEveR Посмотреть сообщение
И зачем подключен curl, если он не используется?
Да это проект для теста. А как мне с помощью curl копировать картинку???

Добавлено через 1 минуту
Ладно щас попробую.

Добавлено через 15 минут
О скопировало, изображения токо в бинарном режиме копируются.

Добавлено через 6 минут
От простой код:
C++
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <string>
using std::string;
#include <iostream>
using std::cout;
using std::endl;
#include <fstream>
using std::ofstream;
 
//подключаем curl
#include "curl/curl.h"
#pragma comment(lib,"curllib.lib")
 
//создаем функцию для записи
static size_t my_fun(char* ptr,size_t size, size_t nmemb, string* str)
{
    if(str)
    {
        //размещает в блоке памяти размером size*nmemb данные из ptr (видимо)
        str->append(ptr,size*nmemb);
        return size*nmemb;
    }
    else
        return 0;//ошибка
}
 
int main()
{
    CURL* curl;
    CURLcode res;
 
    string content;
    curl=curl_easy_init();
    if(curl)
    {
        curl_easy_setopt(curl,CURLOPT_URL,"http://upload.wikimedia.org/wikipedia/commons/thumb/1/14/Animal_diversity.png/265px-Animal_diversity.png");
 
        curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,my_fun);
        curl_easy_setopt(curl,CURLOPT_WRITEDATA,&content);
 
        res=curl_easy_perform(curl);
        if(res==CURLE_OK)cout <<"\nDone!"<<endl;
        else
            cout <<"curl_easy_perform failed: "<<curl_easy_strerror(res)<<endl;
 
        curl_easy_cleanup(curl);
    }
 
    ofstream ofs("img.png",ofstream::out|ofstream::binary);
    ofs <<content;
 
    getchar();
 
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2013, 14:48
Привет! Вот еще темы с ответами:

Как скопировать изображение из одного DC в другое? - Visual Basic
Столкнулся с проблемой. Создал два CompitableDC: 'Первый контекст Public mDC As Long Public mBMP As Long, iBMP As Long Public...

Как скопировать ежечасно меняющееся изображение с сайта НАСА? - JavaScript
Всем доброго времени суток! Нужна ваша помощь с копированием изображения с сайта НАСА...

Как скопировать изображение, находящееся в копируемом диапазоне ячеек - VBA
Доброго времени суток. Проблема в следующем: макросом копируется определенный диапазон ячеек и вставляется в другой лист. В одной из...

Как скопировать выбранное пользователем изображение через OpenDialog в другую папку - C++ Builder
как скопировать выбранное пользователем изображение через OpenDialog в другую папку Помогите пожалуйста, чо-то не получается(((( пишу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.10.2013, 14:48
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru