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

Windows Forms Discussion :

Utilisation d'un fichier csv


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut Utilisation d'un fichier csv
    Alors je n'ai pas du tout vu ça, j'ai juste vu ce qu'il y a de plus basique donc votre aide et vos conseils seront les bienvenues.

    Alors en fait j'ai un fichier csv et dans mon programme je dois afficher ou supprimer (j'ai pensé faire les 2) des données de ce fichier sur une période donnée. Alors la personne choisi une date de début puis une date de fin et moi je dois afficher ou supprimer 10 données par rapport à une date et un typePrise ("PRI") de mon tableau excel qui a juste 3523 lignes ^^(si affichage sous forme de tableau sur VB j'ai pensé). Je n'ai pas de base de données et je cherche une solution simple (D'ailleurs si vous avez des propositions je suis aussi preneur car là je vois pas du tout comment est ce que je vais me débrouiller avec mes bases lol)

    Merci d'avance

  2. #2
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 401
    Par défaut
    je dirais dans l'ordre

    commence par lire ton fichier en le décomposant colonne par colonne

    exemple pris dans les Snippet de visual studio

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim filename As String = "C:\Test.txt"
            Dim fields As String()
            Dim delimiter As String = ","
            Using parser As New TextFieldParser(filename)
                parser.SetDelimiters(delimiter)
                While Not parser.EndOfData
                    ' Read in the fields for the current line
                    fields = parser.ReadFields()
                    ' Add code here to use data in fields variable.
     
                End While
            End Using

    pendant la lecture tu controles la ou les colonnes voulu,
    si la valeur ça correspond à ce que tu souhaites récupère ta ligne pour la mettre dans une collection ou un StringBuilder (bref quelque part).

    ensuite tu écris ou réécris le fichier avec le contenu que tu as mis de coté.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut
    Merci pour tes indications, je comprends pas parfaitement tout mais je vais essayé de me renseigner.

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 401
    Par défaut
    ce code ira mieux avec ce que tu veux faire

    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
    18
    19
    20
    21
    22
    23
    24
     
            Dim filename As String = "C:\Test.txt"
            Dim fields As String()
            Dim delimiter As String = ";" 'caractère de spération
            Dim ligne As String = ""
            Dim JeGArde As New System.Text.StringBuilder
            Dim Newfilename As String = "c:\MonNouveauFichier.txt"
     
            Dim Lect As New IO.StreamReader(filename)
     
            ligne = Lect.ReadLine
     
            While ligne IsNot Nothing 'tant que je ne suis à la fin on continue
                fields = ligne.Split(delimiter)
     
                If fields.GetValue(2) = 54 Then 'si la colonne n°3 (index de début = 0) correspond à ma condition je la stock
                    JeGArde.AppendLine(ligne)
                End If
     
                ligne = Lect.ReadLine 'on passe à la ligne suivante
            End While
     
    'je réécris les lignes que j'ai gardé
            My.Computer.FileSystem.WriteAllText(Newfilename, JeGArde.ToString, False)

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut
    Ok je te remercie pour ton aide, je teste ce code.

  6. #6
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2003
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2003
    Messages : 401
    Par défaut
    pas de pb,

    j'ai pas précisé mais il te faut quand même l'adapter à tes besoins.

    la bonne colonne avec les bonnes valeurs, .....

    tiens nous au courant.

    et si c'est bon n'oublie pas de mettre le post en

  7. #7
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 307
    Par défaut
    J'ai essayé ton code avec un fichier .txt mais le nouveau fichier est vide, est ce que tu connaitrais un code qui fonctionne avec un fichier csv (testé ça fonctionne pas) et qui créeerait automatiquement un nouveau fichier sans que l'on choisisse le nom ?
    Merci pour ton aide

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/03/2008, 21h41
  2. Réponses: 2
    Dernier message: 24/01/2008, 13h48
  3. Utiliser un fichier CSV comme une base de données: contenu rogné
    Par therock dans le forum Accès aux données
    Réponses: 5
    Dernier message: 21/12/2007, 11h00
  4. [bash] utilisation de CAT/AWK pour parser un fichier CSV
    Par arnaudperfect dans le forum Shell et commandes GNU
    Réponses: 32
    Dernier message: 25/07/2007, 23h34
  5. Utilisation fichier csv
    Par BFH dans le forum C
    Réponses: 3
    Dernier message: 15/11/2005, 09h50

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