Как преобразовать изображение в буфер, чтобы я мог отправить его с помощью программирования сокетов? C ++ - PullRequest
0 голосов
/ 29 ноября 2009
  1. Как преобразовать изображение в буфер, чтобы я мог отправить его с помощью программирования сокетов? Я использую программирование сокетов C ++. Я также использую QT для моего Gui.

  2. Кроме того, после отправки его через сокет, как мне собрать это изображение обратно, чтобы оно могло снова стать файлом?

Если бы кто-нибудь мог выложить пример кода, который был бы великолепен:)

Я огляделся и что-то нашел в rfile, но все еще не прошел через мою голову.

TyTy

Ответы [ 3 ]

3 голосов
/ 29 ноября 2009

Если вы используете Qt, используйте QImageWriter и QImageReader и позвольте им напрямую взаимодействовать с сокетом, что исключает необходимость во временном файле.

2 голосов
/ 29 ноября 2009

Если вы хотите отправить изображение в виде файла,
здесь псевдокод для отправки через TCP-соединение.

Клиент A

Set up a connection  
Open a file in binary mode  
Loop:  
   read/load N bytes in a buffer  
   send(buffer)  
Close file  
Close connection  

Клиент B

Listen and accept a connection  
Create a new file in binary mode  
Loop:  
   n = read(buffer)   
   write n bytes in the file
Close file  
Close connection  
0 голосов
/ 08 января 2011

Я также понял это и записал, что я сделал. Вы можете найти описание здесь: http://hanckmann.net/?q=node/44. Можно скачать и использовать примеры там!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...