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

VB.NET Discussion :

Utilisation d'une structure pour formater un enregistrement dans un fichier text


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Points : 36
    Points
    36
    Par défaut Utilisation d'une structure pour formater un enregistrement dans un fichier text
    Bonjour,

    Je n'arrive pas à exploiter la structure que j'ai créée pour l'utiliser lors de l'enregistrement dans un fichier text.

    J'ai la structure suivante pour exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     Public Structure Ligne_Import_Cde
            Public Champ1 As String
            Public Const pointVirgul As String = ";"
            Public Champ2 As String
            Public Const pointVirgul1 As String = ";"
            Public Champ3 As String
            Public Const pointVirgul As String = ";"
            Public Champ4 As String
    End Structure
    J'aimerai utiliser Ligne_Import_Cde pour formater l'enregistrement lors de l'écriture du fichier.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    dim enreg as Ligne_Import_Cde = new Ligne_Import_Cde
     
    enreg.Champ1 = "DUPOND"
    enreg.Champ2 = "JEAN"
    enreg.Champ3 = "20"
     
     FileOpen(1,"C:\ESSAI.TXT", OpenMode.Append)
     PrintLine(1,enreg)
    FileClose(1)
    J'ai un pb de conversion de Ligne_Import_Cde en string.
    Quelqu'un peut m'aider.

    Par avance Merci.

  2. #2
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 441
    Points
    4 441
    Par défaut
    Bonjour

    Ton structure serait plus efficient s'il est revu comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
     
     
    Public Structure Ligne_Import_Cde
        Public Const Sep As String = ";"
        Public Champ1 As String
        Public Champ2 As String
        Public Champ3 As String
        Public Champ4 As String
        Public Overrides Function ToString() As String
            Return Champ1 + Sep + Champ2 + Sep + Champ3 + Sep + Champ4
        End Function
    End Structure
    code du form utilisateur :

    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
    25
    26
    27
    28
    29
     
     
    Public Class Form1
        Private ListEnregs As New List(Of Ligne_Import_Cde)
        Private enreg As Ligne_Import_Cde
        Private CheminFichier As String = Application.StartupPath + "\ESSAI.TXT"
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            ListEnregs.Clear()
            For i As Integer = 1 To 10
                enreg = New Ligne_Import_Cde
     
                enreg.Champ1 = "DUPOND" + i.ToString
                enreg.Champ2 = "JEAN" + i.ToString
                enreg.Champ3 = "20" + i.ToString
                enreg.Champ4 = "BOBARD" + i.ToString
                ListEnregs.Add(enreg)
            Next
     
            ListBox1.DataSource = ListEnregs
     
            FileOpen(1, CheminFichier, OpenMode.Append)
            For Each item As Ligne_Import_Cde In ListEnregs
                PrintLine(1, item.ToString)
     
            Next
            FileClose(1)
     
        End Sub
    End Class
    bon code...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Points : 36
    Points
    36
    Par défaut Utilisation d'une structure pour formater un enregistrement dans un fichier text
    Merci cela fonctionne parfaitement !

    Pouvez vous m'expliquer la syntaxe de la fonction imbriquée dans la structure.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Structure Ligne_Import_Cde
        Public Const Sep As String = ";"
        Public Champ1 As String
        Public Champ2 As String
        Public Champ3 As String
        Public Champ4 As String
        Public Overrides Function ToString() As String
            Return Champ1 + Sep + Champ2 + Sep + Champ3 + Sep + Champ4
        End Function
    End Structure
    Merci

  4. #4
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 441
    Points
    4 441
    Par défaut
    re
    Un peu difficile vu ton niveau ,mais en gros:
    1/ Tout Class Perso déclare par tes soins hérite du Class Object (System. Object)
    Il faut avoir des notions d'héritage...

    2/Ce Class -ancêtre- Object possède une fonction ToString() qui, normalement ,renvoie le nom du Type préfixé par le NameSpace (NomProjet.Ligne_Import_Cde) ...

    3/Cette fonction peut être "overrides" (surchargé) pour renvoyer un string composé de ce que tu souhaites au lieu du nom du type ...( tape public overrides dans l'IntelliSense pour la voir et conclut par la touche espace...)

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 42
    Points : 36
    Points
    36
    Par défaut re
    Merci pour les explications.

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

Discussions similaires

  1. [Toutes versions] Besoin d'une aide pour valider mon travail dans un fichier excel.
    Par Hitman_11 dans le forum Excel
    Réponses: 3
    Dernier message: 27/06/2011, 18h46
  2. Réponses: 1
    Dernier message: 09/10/2009, 17h37
  3. [HTML] Utilisation d'une image stockée sur un serveur dans un fichier HTML
    Par Rosa2008 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/07/2008, 08h01
  4. Réponses: 9
    Dernier message: 21/04/2008, 15h13

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