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écharcher un fichier depuis C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut télécharcher un fichier depuis C#
    Bonjour,
    Je me tourne vers vous car je progresse à tâtons dans la conception d'une petite appli, et là je me heurte à un domaine que je ne connais pas du tout : le web.
    Je souhaite télécharger un fichier .csv depuis une page web et pour cela j'ai écris le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     partial class BggLogin
        {
            static private string UserName;
            private string url = string.Format("https://boardgamegeek.com/geekcollection.php?action=exportcsv&subtype=boardgame&username={0}&exporttype=csv&all=0",UserName);
     
     
            public BggLogin(string usrNm)
            {
                UserName = usrNm;
            }
     
            private void Download()
            {
                WebClient webClient = new WebClient();
                webClient.DownloadFile(url, "test.csv");
            }
        }
    Lorsque j'ouvre le lien depuis un navigateur, celui-ci me propose bien de télécharger le fichier (après un temps d'attente toutefois) mais lorsque le code s'en charge il me retourne un fichier .csv sans rapport avec celui que je souhaite avoir.
    Je me doute qu'il s'agit d'une mauvaise utilisation de ma part, mais je débute et je n'y connais absolument rien en web, donc je me tourne vers vous avec l'espoir que vous pourrez m'aiguiller

    Merci.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Administrateur Systèmes, Clouds et Réseaux /CAO/DAO/Ingénierie Electrotechnique
    Inscrit en
    Décembre 2014
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur Systèmes, Clouds et Réseaux /CAO/DAO/Ingénierie Electrotechnique

    Informations forums :
    Inscription : Décembre 2014
    Messages : 458
    Par défaut
    je connais pas du tout cette manière de faire, mais au cas ou je te dirais de vérifier si par hasard y'a pas un encodage à spécifier pour le transfert. Ca donne quoi au niveau des différences entre ce que tu envoies et ce que tu obtiens.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut
    Le fichier que j'attends est un .csv qui contient une liste de jeux avec leurs propriétés (nb de joueurs, durée, titre, etc...) et c'est bien ce que je reçois quand je colle l'adresse dans un navigateur, mais ce que je reçois à la place depuis mon code ressemble au code source d'une page web :
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    ...

    je ne vais pas coller tout le résultat mais voilà l'idée.

  4. #4
    Membre actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 47
    Par défaut
    Si tu c'est toi qui mets les données en ligne pourquoi ne passerais-tu pas par une base de données?

    si c'est pas le cas deso j'ai pas exploré c# coté web.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut
    Techniquement c'est "moi" qui mets les données en lignes car le site en question est en lui même une base de donnée de jeux, et l'utilisateur créé sa liste de jeux à partir de la banque de données. L'idée en fait est de récupérer cette liste créée pour l'utiliser dans mon programme. ça fonctionne très bien quand je télécharge le .csv depuis le navigateur puis que je l'ouvre depuis mon programme, mais je voudrais essayer de me passer de cette étape pour faciliter l'utilisation, et aussi parce que pour l'instant mon programme tourne sous Windows mais que j'aimerais bien essayer de le faire tourner sous Android.

  6. #6
    Membre actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 47
    Par défaut
    A ta place j'essaierai pas de telecharger le fichier mais juste voir le contenu et recuperer ce qui m'interesse en ecrivant des requetes. pour l'app mobile c'est une autre histoire et j'y connais rien

  7. #7
    Expert confirmé

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par Ganimas Voir le message
    Le fichier que j'attends est un .csv qui contient une liste de jeux avec leurs propriétés (nb de joueurs, durée, titre, etc...) et c'est bien ce que je reçois quand je colle l'adresse dans un navigateur, mais ce que je reçois à la place depuis mon code ressemble au code source d'une page web :
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    ...

    je ne vais pas coller tout le résultat mais voilà l'idée.
    Justement, ça pourrait être intéressant de voir exactement ce qu'il y a. S'agit-il d'une erreur 404 ? 403 ? D'un formulaire d'identification ? D'une redirection ? Plein de possibilités !

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2018
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2018
    Messages : 21
    Par défaut
    Et bien il semblerait qu'il s'agisse du code source de la page de téléchargement, enregistré en .csv.
    Il s'agit de cette page : https://boardgamegeek.com/geekcollec...type=csv&all=0
    dans le .csv je retrouve la même chose que quand j'affiche le code source de la page. :/

    Citation Envoyé par tardash Voir le message
    A ta place j'essaierai pas de telecharger le fichier mais juste voir le contenu et recuperer ce qui m'interesse en ecrivant des requetes. pour l'app mobile c'est une autre histoire et j'y connais rien
    Effectivement ça serait l'idéal, mais là je ne sais même pas par quel bout l'aborder ^^' j'ai commencé à apprendre C# il y a environ 3 semaines (au doigt mouillé) et il y a encore pas mal de choses que je ne connais pas! Je n'ai aucune formation dans ce domaine et du coup il y a des tonnes de choses que je découvre au fur et à mesure. Ce qui est très fun, mais du coup je peux bloquer rapidement aussi.

  9. #9
    Expert confirmé

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Billets dans le blog
    21
    Par défaut
    Pour ma part, quand je suis ton lien, je tombe sur une page, pas sur un fichier CSV. Donc rien d'anormal à ce que ton fichier CSV contienne le contenu de la page si tu utilises cet URL

Discussions similaires

  1. Télécharger un fichier depuis internet
    Par NotANumber dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 18/11/2005, 20h44
  2. download de fichier depuis un serveur web
    Par minusette dans le forum Modules
    Réponses: 9
    Dernier message: 14/10/2005, 09h10
  3. Comment extraire un fichier depuis un CD avec secteurs illisibles ?
    Par Millenod dans le forum API, COM et SDKs
    Réponses: 13
    Dernier message: 22/01/2005, 12h09
  4. Réponses: 3
    Dernier message: 29/10/2004, 13h54

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