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 :

Maj de ma base de donnés depuis un fichier txt


Sujet :

C#

  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2011
    Messages : 34
    Par défaut Maj de ma base de donnés depuis un fichier txt
    Bonjour
    je suis en pleine réalisation de mon projet , le projet c'est un distributeur de boisson
    pour cela je dois gérer le stock ( combien de produit il reste dans la machine , quantité ........ect )
    j'ai crée une base de données que j'ai nommée "stock"
    mon collègue qui bosse avec moi dans le projet m'envoie le nombre de quantité qui reste dans le distributeur sous un fichier txt
    par exemple ( Redbull 500)
    ma question c'est la suivante
    comment faire pour récupérer le contenu de mon fichier .Txt et l'afficher dans mon datagrid view
    est ce que quelq'un a une idéé ou un tuto Merci ts le monde
    Ps : j'ai pensée a creer une structure qui parcours mon fichier.txt mais je sais pas comment

    Sandra

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2009
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2009
    Messages : 317
    Par défaut
    Bonjour,
    tu peux importer le contenu de ton fichier en parsant les lignes.
    - Soit les différents champs de ta ligne sont séparé par un caractère séparateur( ; \t , etc...)
    - Soit ta ligne a une longueur prédéfinie et tes champs se trouve d'un emplacement de ta ligne à un autre .
    Comme par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    aaaaaabbbbcccccccccc
    Champs a : 0 -> 5
    Champs b : 6 -> 9
    Champs c : 10 -> 19


    Dans le premier cas , tu peux utiliser String.Split(caractereseparateur)

    Exemple :

    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
     
    TextReader read = new StreamReader(opendia.FileName);
    String[] Datas = new String[9];
    String ligne;
    char[] delimiter = { '\t' };
    while (read.Peek() >= 0)
    {
            ligne = read.ReadLine();
     
            try
            {
                  Datas = ligne.Split(delimiter);
                   //traitement du contenu du tableau
            }
            catch(Exeption exc){}
    }
    Dans le deuxieme, un simple String.Substring devrait suffire


    PS : Ton collègue ne peut pas t'envoyer le stock sous forme xml ? Ca serait déjà plus propre

  3. #3
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2011
    Messages : 34
    Par défaut
    Bnjr ben

    je pense qu'il peut pas me l envoyé sous .xml

    et sinn j'ai une petit question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    TextReader read = new StreamReader(opendia.FileName);
    String[] Datas = new String[9];
    String ligne;
    char[] delimiter = { '\t' };
    while (read.Peek() >= 0)
    {
            ligne = read.ReadLine();
     
            try
            {
                  Datas = ligne.Split(delimiter);
                   //traitement du contenu du tableau
            }
            catch(Exeption exc){}
    si j'ai bien compris ce code c'est pour ouvrir mon fichier !
    je fais comment pour l'afficher dans mon datagrid ?

  4. #4
    Membre émérite Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Par défaut
    Citation Envoyé par Aeronia Voir le message
    PS : Ton collègue ne peut pas t'envoyer le stock sous forme xml ? Ca serait déjà plus propre
    et surtout plus facile à manipuler...

    j'allais te dire de voir dans le ns System.IO qui te propose des classe pour ce que tu veux faire. les noms sont clairs et tu devrais y trouver ton bonheur ; mais aeronia est passé avant...


    Pour l'afficher dans le datagrid, plusieurs solutions dont :
    Créer une (ou plusieurs classes selon les besoin, ou un struct, qui contient les prop correspondant aux infos (un DTO si je ne m'abuse). Lors de la lecture tu crées une collection de cette classe et, à chaque ligne, un nouvel objet...
    ensuite tu utilises ta liste comme source de données et tu fais le mapping.

  5. #5
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2009
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2009
    Messages : 317
    Par défaut
    Citation Envoyé par d_sandra Voir le message
    Bnjr ben

    je pense qu'il peut pas me l envoyé sous .xml

    et sinn j'ai une petit question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    TextReader read = new StreamReader(opendia.FileName);
    String[] Datas = new String[9];
    String ligne;
    char[] delimiter = { '\t' };
    while (read.Peek() >= 0)
    {
            ligne = read.ReadLine();
     
            try
            {
                  Datas = ligne.Split(delimiter);
                   //traitement du contenu du tableau
            }
            catch(Exeption exc){}
    si j'ai bien compris ce code c'est pour ouvrir mon fichier !
    je fais comment pour l'afficher dans mon datagrid ?
    - Tu crées une classe Stock_Ligne (ou autre peut importe le nom) avec les propriétés qui t’intéresse.
    - Tu initialises une Liste de Stock_Ligne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List<Stock_Ligne> LignesStock = new List<Stock_Ligne>();
    - A chaque ligne de ton fichier, tu crées une instance de ta classe Stock_Ligne dont tu initialise les propriétés, et que tu ajoutes dans ta liste.
    - Ensuite tu bind ta liste à ta datagridview

  6. #6
    Membre émérite Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Par défaut
    - Tu crées une classe Stock_Ligne (ou autre peut importe le nom) avec les propriétés qui t’intéresse.
    - Tu initialises une Liste de Stock_Ligne.

    Code :Sélectionner tout - Visualiser dans une fenêtre à part12
    List<Stock_Ligne> LignesStock = new List<Stock_Ligne>(); - A chaque ligne de ton fichier, tu crées une instance de ta classe Stock_Ligne dont tu initialise les propriétés, et que tu ajoutes dans ta liste.
    - Ensuite tu bind ta liste à ta datagridview
    c'est peut-être plus clair comme ça

  7. #7
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2011
    Messages : 34
    Par défaut
    Merci bcp pour votre aide , j'ai bien réussi a résoudre mon probleme , par contre j'ai utiliser des fichiers .Csv c'est plus pratique et plus simple

  8. #8
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par d_sandra Voir le message
    j'ai utiliser des fichiers .Csv c'est plus pratique et plus simple
    Non, c'est une source de problème sans fins, car cela contraint le contenu des libellés.

    Tu ferais mieux d'utiliser du XML comme mentionné supra.

  9. #9
    Membre averti
    Femme Profil pro
    Inscrit en
    Avril 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2011
    Messages : 34
    Par défaut
    ok je vais essayé

Discussions similaires

  1. Reconstruction d'une base de données depuis multiples fichiers Excel
    Par ryosakasaki7777 dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 27/01/2014, 23h22
  2. Charger des donnés depuis un fichier .txt
    Par Rifano dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/07/2009, 11h59
  3. Export de base de donnée vers un fichier .txt
    Par VSEB33 dans le forum Bases de données
    Réponses: 4
    Dernier message: 15/01/2008, 10h51
  4. Chemin de base de données dans un fichier txt ou ini
    Par miwbath dans le forum Bases de données
    Réponses: 1
    Dernier message: 22/10/2007, 20h34
  5. Comment créer une base de donnée dans un fichier .txt
    Par vantoff dans le forum C++Builder
    Réponses: 9
    Dernier message: 19/07/2006, 19h44

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