Problème avec textBox

dourida Messages postés 31 Date d'inscription vendredi 17 avril 2009 Statut Membre Dernière intervention 19 septembre 2009 - 30 juil. 2009 à 20:04
dourida Messages postés 31 Date d'inscription vendredi 17 avril 2009 Statut Membre Dernière intervention 19 septembre 2009 - 31 juil. 2009 à 15:29
Salut

J'ai un grand problème avec le textBox en C#.
je transforme un texte à un tableau de byte pour que je puisse le chiffrer avec AES, puis j'affiche le texte chiffré dans un texteBOx, puis pour le déchiffrer j'utilise ce code pour récupérer le contenu de textBox et de le mettre à nouveau dans un tableau de byte:
montableau = Encoding.Unicode.GetBytes(montextBox.Text).

Le problème c'est que le textBox avec ce code ne récupère pas tous le texte et il me donne un tableau de byte incomplet s'il trouve qu'il ya plus de deux 0 consécutifs dans le tableau,

Merci pour votre aide

4 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
31 juil. 2009 à 10:28
Salut

Je ne connais pas particulièrement AES, mais je suppose qu'un caractère peut être potentiellement codé en n'importe quelle valeur. Or, si je prends par exemple le caractère 13 (0x0D, <CR> ou encore '\n') qui représente le retour chariot, celui-ci ne peut pas être inséré dans une textbox à une seule ligne. Ceci est un exemple, mais il y en a beaucoup d'autres, tels que 0 (0x00, <NUL> ou encore '\0'). C'est probablement pour cette raison que ton tableau est incomplet.

C'est d'ailleurs la grande différence entre les fichiers ASCII ou Binaires. Par exemple, duplique une image (pour pas la perdre), ouvre avec NotePad et enregistre (sans modifier quoi que ce soit). Tu ne pourras plus ouvrir ton image.

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé ! -
0
dourida Messages postés 31 Date d'inscription vendredi 17 avril 2009 Statut Membre Dernière intervention 19 septembre 2009
31 juil. 2009 à 11:40
Salut

Merci pour ton explication,,,mais dis moi,,dans ce ça que doit je faire pour régler mon problème ?

Merci
0
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
31 juil. 2009 à 11:56
Je vois 2 solutions :
Soit tu écris dans ta textbox en hexadécimal (donc chaque octet prendra 2 caractères)
Soit tu passes par un fichier

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé ! -
0
dourida Messages postés 31 Date d'inscription vendredi 17 avril 2009 Statut Membre Dernière intervention 19 septembre 2009
31 juil. 2009 à 15:29
Merci bcp,, je vais essayer.

Et pour les problèmes qui je t'ai envoyé (ce qui concerne le vista et les fichiers word),,,,t'a une idée ??

Merci
0
Rejoignez-nous