crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> во что можно поместить картинку из файла?
eldar85
  опции профиля:
сообщение 12.4.2010, 21:11
Сообщение #1


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


мне нужно взять картинку из файла и отправить ее по сети.
можно ли ее загрузить из файла сначала в QString, а потом отправить??

Сообщение отредактировал eldar85 - 12.4.2010, 21:12
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 12.4.2010, 21:13
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(eldar85 @ 12.4.2010, 22:11) *
мне нужно взять картинку из файла и отправить ее по сети.
можно ли ее загрузить из файла сначала в QString, а потом отправить??

Ну вообще QDataStream может и QImage записать/прочитать, и QPixmap.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
eldar85
  опции профиля:
сообщение 12.4.2010, 21:26
Сообщение #3


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


а в QString нельзя? я просто libcurl ом отправляю и получается мне нужно в
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postdata.c_str());

строку или массив char...

Сообщение отредактировал eldar85 - 12.4.2010, 21:28
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 12.4.2010, 21:28
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(eldar85 @ 12.4.2010, 22:26) *
а в QString нельзя? я просто libcurl ом отправляю и получается мне нужно в
    curl_easy_setopt(curl, CURLOPT_PROXY, proxy.c_str());

строку или массив char...

А на другой стороне кто картинку принимает? Кому она отсылается?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
eldar85
  опции профиля:
сообщение 12.4.2010, 21:30
Сообщение #5


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


извиняюсь я не ту строку сначала написал, вот исправил))

отправляется на zalil.ru

Сообщение отредактировал eldar85 - 12.4.2010, 21:34
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 12.4.2010, 21:36
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(eldar85 @ 12.4.2010, 22:30) *
извиняюсь я не ту строку сначала написал, вот исправил))

отправляется на zalil.ru, это сайт для хранения информации))

Если я правильно понял, то достаточно QFile:
QFile img( "./image.png" );
if( !img.open( QIODevice::ReadOnly) )
    return;

QByteArray data = img.readAll();

// Вот твой указатель на данные. Учти что он будет валиден, пока будет жить data.
const char *buf = data.constData();
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
eldar85
  опции профиля:
сообщение 12.4.2010, 21:38
Сообщение #7


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


)))большое спасибо!!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
eldar85
  опции профиля:
сообщение 13.4.2010, 2:51
Сообщение #8


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


как понять валиден пока будет жить data??
то есть если я обнулю QByteArray то и массив buf обнулится??))
хотя в принципе это не столь важно, но все же интересно))
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 13.4.2010, 7:46
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(eldar85 @ 13.4.2010, 3:51) *
как понять валиден пока будет жить data??
то есть если я обнулю QByteArray то и массив buf обнулится??))
хотя в принципе это не столь важно, но все же интересно))

Данные файла хранятся в объекте data класса QByteArray, при необходимости мы можем получить указатель на эти данные. Если объект data разрушится, например при выходе из функции, то указатель который мы получили, будет указывать на освобожденный блок памяти и соответственно использовать его (указатель) уже нельзя.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
eldar85
  опции профиля:
сообщение 13.4.2010, 14:13
Сообщение #10


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


ок, понятно)) спасибо большое))
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 10.12.2018, 17:52