Bonjour,
je suis débutant en C++ et je voudrais faire la chose suivante :
dans netbeans j'ai un bout de code qui ouvre un flux , un fichier jpeg je le lis et j'affiche le résultat dans la console , voici le code (ce n'est pas moi qui l'ai ecrit ;-)) :
dans la console je récupère :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 #include <fstream> #include <vector> #include <iostream> #include <algorithm> using namespace std; int main() { ifstream in; in.open("/Users/sept_cinquante/Desktop/test.jpg", ios::in | ios::binary); if(in.is_open()) { // get the starting position streampos start = in.tellg(); // go to the end in.seekg(0, std::ios::end); // get the ending position streampos end = in.tellg(); // go back to the start in.seekg(0, std::ios::beg); // create a vector to hold the data that // is resized to the total size of the file std::vector<char> contents; contents.resize(static_cast<size_t>(end - start)); // read it in in.read(&contents[0], contents.size()); // print it out (for clarity) for(const char& c : contents) { cout << c; }; }else{ cout << "fichier non ouvert"; } return 0; }
cela ne me semble pas être la représentation binaire d'un fichier , je devrais récupérer des bytes en 0 ou 1 voir de l' hexa.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 ������!��� }!1AQa"q2��#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������w!1AQaq"2B���� #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������(��?���\�(�C7�V�����r��I&�Q{�Ceu�2�<��^�J�M�����c���FW<g�jb�uH��i�������{�m�X�\B��dq��ס+1ݲ�x�Q8L�s�H|U����aq��s��n㵐��گ��@�=)������\�1��Q+D6܀���\*�����Cu$�r���s�I��ꢐ&W�H��Sh�`}(��6̖�:=��j�2�`K.2x�ꣲ�l]��? �ɽȠeg2�s�G=zT�ۍ��FۏQ����_5q�l{I��j�#,�B0�3p:U���-u&��d!Dx�4B�jmYe���g�� RO !FO�}�:�Q���y8싀�4�$=����3>H �U�*cx�6X�����sGU�g�������� �䴬<��FOaҰwJ|�ے��S�P�Z�8<Ăd<u�V���T�j�ֶ�\�=�9=��X�ȧ'�N��a9X�)-�H4����qQ�.�h�Di,�tPZŶޅh���;`��*�Y1]K��*�8�@GN��kc��*�!��q��v�O��r{�j$�>ĄaW�R�w��{�Sr�ɟ!��8�5�������a�NA�V���&�Vho<��t�I�R@�K��S������؞��I����56�Qߠd�-��!�T|�?�j����|����(b��ӟjnڴ 1�[�s��3��C��6 ��M4��8��u�3K���إ�С˼��>�ԁ[?1��փ�N�I=;��Rs��iXZ���w�c�J9m�^ὺs�1�ѓ��<u�Ҫ�BW�9<���M��q�ǭ-��ǂ�3{�)v�<{Ի�w�99�� 9�z��w���>�T㱥]��$�Ь=@dc�8�qN�N(OQ[�����������ɧua\ifݒ͚76�7���I�b����@�3@r�#?�R`<H���k��rľi_w$`�T��b�m�l�����^Ȳj3�F�I��~��]�Ɲ���F~aOء8�'��(w���/�2Á�R� �ҩ�!���A��*�Ѵ�RI�M���[z�ʚv�u�)Xm܊%��[,���X)Q��'�8ٳF��9���j��Y�����Ӑ���W7Vm����l�["$7�0{��.CQ��Gih�����2H~�,��.�'#�����?�w�%��HX�(�H>������7�{�r?*����G<�����h֑F�6S,��(p[���9����{+�d����q#f2�?l ����l҅�/���Ն��q��h�)AT��[3b"T�ߊl���i�A� �����ڔ ,=h����*����#�-���)&+ws�NRB�^�heʩ�n'�����$g۽0�I�ڱ������F�h2y�OҦk�!���q�Mt�c�J��ih2A�6�@;�E8�*��DɃ�� ........
je voulais savoir comment récupérer le contenu binaire, peut être qu'il existe des softs pour cela, perso je suis sous OSX. le test que je voulais faire était de savoir, si en récupérant le contenu binaire d'un jpeg je pouvais faire une simple copie dans un fichier vierge jpeg a laide d'un éditeur et que je conservais bien mon image.
dans un future proche je vais avoir besoin d'envoyer par radio le contenu d'une image , je pensais donc envoyer le binaire et le reconstituer pour afficher l'image sur une machine distante.
bien entendu je ne peux pas envoyer ca par FTP ou autre, cela serait trop facile je vais envoyer ca a partir d'une arduino et de Xbee pour la transmition radio
voila
si qq1 a une piste, pour que je puisse comprendre.
merci A+
Partager