Téléchargement fichiers par WebClient

stever50 Messages postés 8 Date d'inscription jeudi 8 janvier 2009 Statut Membre Dernière intervention 11 novembre 2010 - 27 janv. 2009 à 18:14
stever50 Messages postés 8 Date d'inscription jeudi 8 janvier 2009 Statut Membre Dernière intervention 11 novembre 2010 - 2 févr. 2009 à 12:08
Bonjour,
Petit problème; j'utilise afin de télécharger en local une liste de fichiers par ftp, WebClient.

WebClient wc = new WebClient();
....
wc.downloadFile(src,dest);
...

Ensuite, pour traiter leurs contenus, TextReader.
...
TextReader tr = new StreamReader(path, System.Text.Encoding.ASCII,false);
// parcours du fichier
while (tr.Peek() >0){
   ...
}

le problème est que lors de l'importation des fichiers [bêtes fichiers txt], il ne détécte pas que c'est de l'ASCII. Donc, mon TextReader ne detecte pas non plus la fin de la ligne.
Une idée du problème ? lorsque j'ouvre l'un de ces fichier avec le notepad, ils ne contiennent en effet aucun retour à la ligne.

Merci pour votre aide

5 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
27 janv. 2009 à 21:44
Bonsoir,
Peut-être en utilisant la property Encoding de la classe WebClient? (pas essayé...)
Et le fichier est bien en ASCII sur le server?

<hr />
-Blog-
-Site Perso-
0
stever50 Messages postés 8 Date d'inscription jeudi 8 janvier 2009 Statut Membre Dernière intervention 11 novembre 2010
28 janv. 2009 à 08:40
Bonjour,
J'ai essayé mais ça ne marche pas.
Ce qui est bizare, c'est que si je les télécharges par FileZilla, les fichiers sont dans le bon format et les données contenues exploitables. Mais je souhaite automatiser le téléchargement.
Une autre idée ?
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
28 janv. 2009 à 19:02
Pour l'instant pas d'autres idées non...
Si jamais quelques choses me vient à l'esprit, je ferai signe :)

<hr />
-Blog-
-Site Perso-
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
31 janv. 2009 à 16:04
Salut,

Il y a plusieurs types de transfert en FTP dont notamment binaire (TYPE I) ou ASCII (TYPE A).

Je suppose que par défaut le WebClient utilise les valeurs par défaut pour FtpWebRequest, c'est à dire un transfert en mode binaire alors que ton FileZilla demande peut être un transfert en ASCII (regarde les commandes "TYPE I" ou "TYPE A" dans le log de commande du soft).
Logiquement si le serveur en face gère cette commande, une conversion du contenu du fichier est effectuée lors du transfert, avec notamment changement du type de fin de ligne.

/*
coq
MVP Visual C#
CoqBlog
*/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
stever50 Messages postés 8 Date d'inscription jeudi 8 janvier 2009 Statut Membre Dernière intervention 11 novembre 2010
2 févr. 2009 à 12:08
Salut,
Merci de ta réponse et t'as vu juste concernant FileZilla. J'ai testé WebClient et maintenant FtpWebRequest avec le même resultat.

N'y a-til pas un moyen d'envoyer  bêtement la commande mget * qui marche si bien en mode console [et qui transfert le tout en ASCII] ?

Bonne journée
0
Rejoignez-nous