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 :

Importer un fichier .txt


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 61
    Points : 48
    Points
    48
    Par défaut Importer un fichier .txt
    bonjour a tous,
    J'aimerais savoir comment faire pour importer un fichier .txt dans un projet avec visual studio.
    En fait mon fichier texte est composer comme tel :
    tata;21;ts1i
    toto;25;ts2i
    tutu;24;ts1i
    ...

    Je souhait maintenant importer ces données et remplir un tableau.

    merci.

  2. #2
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut
    Faut simplement le lire et remplir ton tab au fur et a mesure...

    changement de collone dans ton tab dès que "point virgule"
    changement de ligne dans ton tab dès que "retour chariot"
    Pour les details, cherche tout seul !

  3. #3
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par ZaaN Voir le message
    changement de collone dans ton tab dès que "point virgule"
    Sur chaque ligne lue via ReadLine on peut aussi faire LaLigne.Split(";")

    Sinon il n'était pas nécéssaire d'aller jusqu'à Microsoft ... la réponse est dans la FAQ

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    -> Compile pas

    -> Compile


    Edit :
    On peux aussi faire plus compliqué :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LaLigne.Split(";".ToCharArray())


    Split attend un char ou un tableau de char.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 700
    Points : 780
    Points
    780
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Split attend un char ou un tableau de char.
    Tu anticipes?


    La même chose à la mode linq
    http://patricelamarche.net/posts/LIN...s_de_code.aspx

    (On split toujours bien sur)

  6. #6
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Tu anticipes?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    var operations = from line in System.IO.File.ReadAllLines(filename)
                             let fields = line.Split(new char[] { ',' })
                             select new Entities.Operation
                             { 
                                 DateOperation = DateTime.Parse(fields[0]), 
                                 Valeur = DateTime.Parse(fields[1]), 
                                 Debit=fields[2].Length>0? decimal.Parse(fields[2],inv):0 ,
                                 Credit=fields[3].Length>0?decimal.Parse(fields[3],inv):0,
                                 Libelle = fields[4],
                                 Solde=decimal.Parse(fields[5],inv)
                             };
    Heu ... là je vois pas trop l'intérêt de ne pas faire de boucle
    Enfin Linq reste assez intéressant, j'ai vu du code sur des parcours de collections simplifiant considérablement les choses que si l'on avait pas Linq.
    Mais bon c'est pour le 3.5 c cela ?
    Moi je ne suis encore qu'au 2.0 :'(

    Edit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    line.Split(new char[] { ',' })
    Nan mais là c fait exprés, c pour mettre en application ma signature, non ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  7. #7
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Sinon, il est possible d'attaquer un fichier CSV avec ADO.NET...

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 61
    Points : 48
    Points
    48
    Par défaut
    tout d'abord merci de vos réponses.
    en fait étant donné que je débute dans la programmation (je fait un peu d'objet ) je ne comprend pas tout ce que vous avez écrit.Je ne vous demande pas forcément du code mais la manière de faire.
    merci danvance et si vous souahitez des précisions n'hésitez pas.

  9. #9
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Split attend un char ou un tableau de char.
    Juste en passant :
    http://msdn2.microsoft.com/fr-fr/lib...cf(VS.80).aspx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String.Split, méthode (String[], StringSplitOptions)
    na !

  10. #10
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Remarque : cette méthode est nouvelle dans le .NET Framework version 2.0.
    Donc je n'avais pas totalement tord.
    Nan mais c l'expérience du 1.1
    La première fois tu essayes avec une chaine de caractères, et puis hop le compilo te jette.
    Après cela, plus jamais de chaine de caractères, tu n'utilises que des caractères ou des tableau de caractères.

    Donc voilà, on en reste la dessus : exequo on va dire
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  11. #11
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Citation Envoyé par shyx21 Voir le message
    tout d'abord merci de vos réponses.
    en fait étant donné que je débute dans la programmation (je fait un peu d'objet ) je ne comprend pas tout ce que vous avez écrit.Je ne vous demande pas forcément du code mais la manière de faire.
    merci danvance et si vous souahitez des précisions n'hésitez pas.
    Bah Zaan t'a donné le début de la démarche, as tu essayé ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  12. #12
    Rukia
    Invité(e)
    Par défaut
    Citation Envoyé par shyx21 Voir le message
    bonjour a tous,
    J'aimerais savoir comment faire pour importer un fichier .txt dans un projet avec visual studio.
    En fait mon fichier texte est composer comme tel :
    tata;21;ts1i
    toto;25;ts2i
    tutu;24;ts1i
    ...

    Je souhait maintenant importer ces données et remplir un tableau.

    merci.
    je te donne le code qui peux t'aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     char[] array = new char[] {';'};
    using (StreamReader sr = new StreamReader("nom fichier.txt"))
         {
            String line;
     
            while ((line = sr.ReadLine()) != null) //on a pris une ligne du bloc note //
              {
                 String[] sep = line.Split(array[0]);
    // ** dans le tableau t'as trois case qui contiens les 3 string (exp:tata  21 ts1i)   ** //
                }
           }
    j'espère que ça va t'aide
    Bon courage
    Dernière modification par Rukia ; 28/03/2008 à 12h51.

  13. #13
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String s = Console.ReadLine();
    String[]morceaux = s.Split(array[0]);
    Pkoi faire cela ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  14. #14
    Rukia
    Invité(e)
    Par défaut
    ah une erreur ....... c'étais une partie de mon code a moi que j'ai oublier d'enlever

  15. #15
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 61
    Points : 48
    Points
    48
    Par défaut
    merci de vos réponse je vous prévient si j'ai une autre question
    merci a tous meme si ça par en débat...lol

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/10/2012, 10h28
  2. [VBA-excel] import de fichier txt sans délimiteur de texte
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/01/2008, 05h49
  3. Import de fichier TXT
    Par REMACC1 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 09/08/2007, 14h29
  4. probleme d'import de fichier txt avec des tab
    Par lecureuil dans le forum Access
    Réponses: 4
    Dernier message: 23/08/2005, 19h22
  5. .bat pour l'import de fichier txt dans postgres
    Par pseudomh dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 25/03/2005, 00h02

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