Bonjour,
Je suis étudiant en informatique (plutôt débutant en C++ donc) et j'ai un problème dans un programme que j'essaie de faire : j'ai besoin de lire des LSBs pour assembler ses derniers dans un fichier résultant (récupérer un texte caché par stéganographie dans une image .bmp). Voici mon code.
J'utilise donc la bibliothèque fstream pour accéder à mon image et pour générer un fichier. Le problème est d'après moi que je ne récupère pas réellement les LSBs sous une variable int mais sous une variable char (j'obtiens une erreur lorsque j'utilise une variable de type int). Cette variable est donc nommée octelch. J'essaie donc de convertir les bits en texte en nombre via la fonction car_nbre, le résultat est stocké dans la variable int octel.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Le problème est ici que le programme me retourne systématiquement la sortie d'erreur dans la fonction car_nbre, j'ai donc affiché pour déboguer, la variable char octelch pour vérifier si c'était effectivement un 1 ou un 0 qu'elle contenait, et au lieu de ça j'ai caractères sans queue ni tête... En effet je ne comprends pas mon erreur étant donné que j'ai pris soin d'ouvrir mon image avec fstream en tant que fichier binaire (si j'ai bien compris la doc en anglais).
De plus je ne sais pas s'il vaut mieux que j'utilise l'instruction fstream.read (ici img.read) ou fstream.get (je n'arrive pas à trouver une doc qui explique clairement comment on utilise cette dernière). J'ai ici fait pas mal d'essais (tous infructueux) comme vous pouvez le constater en lisant les instructions commentées... ^^
Bref... Pas mal de couacs alors je m'en remet à ce forum... Comment puis-je résoudre ces problèmes ?
Merci beaucoup, bonne journée.

 

 
		
		 
         
 


 Récupérer LSB fichier C++
 Récupérer LSB fichier C++
				 Répondre avec citation
  Répondre avec citation
Partager