ven. 08 janvier 2016, 17h18
Gregory Adam
Belgique
atoutfox.public.association
Re: FileToStr et Byte
Le ven. 08 janvier 2016, 17h00 OlivierH a écrit :
> Gregory,
>
> si je te suis bien et que je fais cela :
>
> m.cFile = FiletoStr("d:\photo.jpg")
>
> m.cFile est du type bytearray
>
>
> Pourquoi je vois dans mon fichier à l'arrivé que 4 car
Parce que c'est le resultat d'un encodage. Il faut regarder le fichier en hex
> comme mon messagebox(m.cFile) et pas tout le contenu du jpg, snif !
>
> me coute cher de faire de l'azure sur foxpro, alors qu'en .Net en 2
> journées la librairie était fini en mode complet !
>
Meme en .net tu fais des choses qui ne sont pas tres orthodoxes
Tant que tu n'investis pas le temps pour comprendre le mechanisme de l'encodage, tu vas continuer a galerer,
en FoxPro comme en .Net
> Olivier
>
>
>
> Le 08/01/2016 16:54, Gregory Adam a écrit :
> > Olivier,
> >
> > Tout resultat d'un encodage est une sequence de bytes ( bytearray)
> >
> > Une image sur disc est le resultat d'un encodage (jpg, ou autre)
> > Des chaines de char mises dans un fichier sont le resultat d'un encodage
> >
> > Donc, dans les fichiers tu n'as qu'une sequence de bytes
> >
> > Tu veux transferer une image - qui est deja le resultat d'un encodage - et tu passes par utf-8
> > La raison m'echappe
> >
> > Ici
byteArray = Encoding.UTF8.GetBytes(VarDeMaPhoto);
> >
> > Cela veut dire que tu as mis l'image dans une chaine de char
> > Cela a du faire un decodage de bytes pour mettre cela dans un chaine
> >
> > NON
> >
> > L'image tu la mets directement dans un byte array et tu n'as plus besoin de GetBytes( puisque tu as deja tes bytes
> >
> >
> >
> .
>
Permalink : http://www.atoutfox.org/nntp.asp?ID=0000017138