IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

téléchargement par WebClient


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 55
    Par défaut téléchargement par WebClient
    Bonjour,
    Petit problème; j'utilise afin de télécharger en local une liste de fichiers 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 alors que sur le server distant oui.

    Merci pour votre aide

  2. #2
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 55
    Par défaut
    Je patauge.
    Personne ne sait transférer de bêtes fichiers en forçant le type à ASCII ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Par défaut
    En faisant un tr.ReadToEnd() ou lors en passant par autre chose qu'un TextReader tu n'arrives à rien?

    Je t'avoue n'avoir jamais eu ce problèmes lors de téléchargement FTP via FtpWebRequest.

    Si ça peut aider, je faisais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    FtpWebRequest reqFTP;
     
    reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + m_ip + m_path));
    reqFTP.UseBinary = true;
    reqFTP.Credentials = new NetworkCredential(m_userName, m_password);
    reqFTP.Method = command;
    StreamReader reader = new StreamReader (reqFTP.GetRequestStream().Read;)
    string txt = reader.ReadToEnd();
    reader.Close();
    reader.Dispose();

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    134
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 134
    Par défaut
    pourquoi ne pas utiliser un weqrequest et télécharger ton fichier avec un binary reader

  5. #5
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 55
    Par défaut
    Salut à tous et merci pour vos réponses. Mais J'AI TROUVE [d'ailleurs j'aurais pu trouver un peu plus tôt si j'avais été un peu plus malin et si j'avais un peu mieux lu ce que l'on trouve dans la msdn].

    J'ai définitivement laissé tombé l'utilisation de webClient. FtpWebRequest permet très simplement de spécifier le type de transfert que l'on efféctue grâce à
    ftp = (FtpWebRequest)FtpWebRequest.Create(adress);
    ftp.UseBinary = false;

    Et c'est tout. Mais je rencontre un nouveau petit prob :
    Parfois, le traitement s'arrête au plein milieu du téléchargement des fichiers. Je dis parfois parce que des fois les 1029 fichiers sont descendus, des fois pas. la console reste ouverte et au bout de qq temps, timeout [je l'ai par ailleurs mis à "infinite".
    Si vous avez une idée...
    Bonne soirée

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reqFTP.UsePassive = false;
    Et ton vœux sera exaucé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Etat téléchargement par evenement en c++/cli
    Par Zaltez dans le forum C++/CLI
    Réponses: 6
    Dernier message: 04/09/2007, 16h20
  2. Réponses: 4
    Dernier message: 12/05/2007, 14h35
  3. [Système] Téléchargement par HTTP d'un fichier
    Par Thierry8 dans le forum Langage
    Réponses: 20
    Dernier message: 06/06/2006, 10h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo