Ouverture d'un fichier image [Résolu]

Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
- - Dernière réponse : zenga
Messages postés
1
Date d'inscription
samedi 27 octobre 2001
Dernière intervention
6 novembre 2004
- 6 nov. 2004 à 15:46
salut
dans mon prog, je dois ouvrir un fichier jpg, pour le resauvegarder dans un autre emplacement, le problème c'est que quand je le lit, et je l'ecrit, il devient illisible, et même quand j'ouvre le fichier d'origine et le deuxième avec le bloc-notes, ils sont différents un peu, voilà ce que je fait pour ouvrir:

System.IO.FileStream dd = new System.IO.FileStream(InscriParcourir.FileName,System.IO.FileMode.Open);
byte [] Recu = new byte[dd.Length];
dd.Read(Recu,0,Recu.Length);
Env = System.Text.ASCIIEncoding.ASCII.GetString(Recu);

pour l'ecriture

System.IO.StreamWriter RT = new System.IO.StreamWriter("f:\\Serveur\\Avatar\\aa.jpg" );
RT.Write(Env);

le copier coller directe du fichier ne résoud pas mon problème, faut le lire et le réecrire, car la lecture et de chez le client, et l'ecréture et dans le serveur, soyez sur que l'envoie de données ne fait aucune perte, c'est testé (avec un fichier jpg qui contient "aaa", ca reste "aaa" même cher le serveur)

merci de m'aider, je pense que le problème et dans l'encodage.
merci
http://www.devportail.tk
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
Messages postés
1523
Date d'inscription
mardi 18 décembre 2001
Dernière intervention
21 août 2010
3
Merci
System.IO.FileStream dd = new System.IO.FileStream(InscriParcourir.FileName,System.IO.FileMode.Open);
byte [] Recu = new byte[dd.Length];
dd.Read(Recu,0,Recu.Length);
Env = Convert.ToBase64String(Recu, 0,Recu.Length);


pour l'ecriture

System.IO.StreamWriter RT = new System.IO.StreamWriter("f:\\Serveur\\Avatar\\aa.jpg" ); 
RT.Write(Convert.FromBase64String(Env));


A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Crazyht
Messages postés
1523
Date d'inscription
mardi 18 décembre 2001
Dernière intervention
21 août 2010
3
Merci
Pour Ecrire :

System.IO.FileStream dd = new System.IO.FileStream("f:\\Serveur\\Avatar\\aa.jpg"); 
byte[] buf = Convert.FromBase64String(Env);
dd.Write (buf,0,buf.Length);


Il est a noter que le code que je fournis n'est pas verifié. Je suis juste la pour donner une piste de recherche.

A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Crazyht
Messages postés
1523
Date d'inscription
mardi 18 décembre 2001
Dernière intervention
21 août 2010
0
Merci
Juste une question :

Pourquoi faire System.Text.ASCIIEncoding.ASCII.GetString(Recu) ?

Je vois pas l'interet puisqu'un JPG est un fichier binaire

A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
Commenter la réponse de cs_Crazyht
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
seulement parceque quand on envoie, la variable doit être un texte string, et non pas un tableau ou sont stocké les codes ascii.
RT.Write(string truc)

http://www.devportail.tk
Commenter la réponse de Fildomen
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
SVP AIDEZ MOI !!! je savais pas qu'ouvrir un fichier non .txt est aussi difficile avec ce langage
Commenter la réponse de Fildomen
Messages postés
1523
Date d'inscription
mardi 18 décembre 2001
Dernière intervention
21 août 2010
0
Merci
A mon avis, le probleme viens de la transformation en String, essaie plutot un passage en Base64 et une reconversion de la base64 en binaire apres transfere.

A++

:-p Crazyht :)
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
Commenter la réponse de cs_Crazyht
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
je pense pas que c'est de l'encodage, ni de la transformation, parceque j'ai modifié la facon de la lecture, ici le StreamReader(,true) est pour qu'il détecte automatiquement l'encodage:

System.IO.FileStream rr = new System.IO.FileStream(InscriParcourir.FileName,System.IO.FileMode.Open );
char [] Recu = new char[rr.Length ];
rr.Close();
System.IO.StreamReader dd = new System.IO.StreamReader(InscriParcourir.FileName,true);
dd.Read(Recu,0,Recu.Length);
string ee = (new string(Recu));//ici on transforme en string
Env +=ee+InscriParcourir.FileName.Substring(InscriParcourir.FileName.Length-4,4dd.Close();

la transformation est depuis char maintenant, et non byte, alors il ne fait que les coller !!!
Alors, c'est impossible????même la détection auto est fausse!!! non, c'est pas pour ca que je vais abondonner mon projet?? SVP aidez moi

http://www.devportail.tk
Commenter la réponse de Fildomen
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
Code un peu commenté:

System.IO.FileStream rr = new System.IO.FileStream(PATH,System.IO.FileMode.Open );//on crée ca pour savoir la longuer du fichier
char [] Recu = new char[rr.Length ];
rr.Close();//on ferme le FileStream pour crée un StreamReader
System.IO.StreamReader dd = new System.IO.StreamReader(PATH,true);
dd.Read(Recu,0,Recu.Length);// la lecture
string ee = (new string(Recu));//ici on transforme en string
dd.Close();

http://www.devportail.tk
Commenter la réponse de Fildomen
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
Ca n'a pas marché, il écrit dans le fichier cette ligne bizzard

System.Byte[]

c'est difficile d'ouvrir un fichier, je savais pas que c'est trop dûr, en vb, tout les fichiers sont les même, pas d'encodage ni rien, tu ouvres, tu lis,j'aime bien avoir une commande qui ouvre et qui lit comme celle de vb.

merci comême de ton aide, et j'éspère bien que tu me trouveras une solution, je veux pas dire à mes pottes que j'ai abondonné mon serveur parce-que je sais pas comment ouvrir un fichier, merci.

http://www.devportail.tk
Commenter la réponse de Fildomen
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Dernière intervention
30 octobre 2010
0
Merci
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht Merci M.Crazyht
Commenter la réponse de Fildomen
Messages postés
1
Date d'inscription
samedi 27 octobre 2001
Dernière intervention
6 novembre 2004
0
Merci
bonjour,
je cherche aussi a ouvrir un fichier avec c#
as tu trouvé la solution?
zenga.lilo@caramail.com
Commenter la réponse de zenga

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.