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 :

Sortir d'un while


Sujet :

VB.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut Sortir d'un while
    bonjour, j'ai fais le code ci-dessous mais je n'arrive pas à sortir lorsque mon fichier ini contient [prochain entretien] j'aimerai qu'îl mette dans la listview seulement les lignes comprises entre [date du dernier entretien] et [ prochain entretien], je bloque, merci
    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
    code visual studio vb.net 
    Dim filename As String
            filename = ".\entretien.ini"
            Dim ligne2 As String
            Dim sr3 As StreamReader = New StreamReader(filename, System.Text.Encoding.UTF7)
            While sr3.EndOfStream = False
                ligne2 = sr3.ReadLine()
                If ligne2 = "[Date du dernier entretien]" Then
                    If ligne2 = "[Prochain(s) entretien(s)]" Then Exit While
                    While sr3.EndOfStream = False
                        Dim MyLine As ListViewItem = New ListViewItem(New String() {sr3.ReadLine})
                        dernier_entretien.ListView3.Items.Add(MyLine)
                    End While
                End If
            End While
            sr3.Close()

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Nièvre (Bourgogne)

    Informations forums :
    Inscription : Juin 2004
    Messages : 92
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If ligne2 = "[Date du dernier entretien]" Then
                    If ligne2 = "[Prochain(s) entretien(s)]" Then Exit While '<-------------- erreur ne peut pas contenir ça

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut
    j'ai écris ça mais ça n'efface pas les lignes?
    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
    Dim ligne As String
            Dim filename As String
            filename = ".\entretien.ini"
            Dim ligne2, ligne3 As String
            Dim sr3 As StreamReader = New StreamReader(filename, System.Text.Encoding.UTF7)
            Dim sw As New StreamWriter(".\tampolistview.txt")
            While sr3.EndOfStream = False
                ligne2 = sr3.ReadLine()
                If ligne2 = "[Date du dernier entretien]" Then
                    While sr3.EndOfStream = False 'si c'est le dernier bloc et la fin du fichier
                        ligne2 = sr3.ReadLine()
                        sw.WriteLine(ligne2)
                    End While
                End If
            End While
            sw.Close()
            sr3.Close()
            Dim linestart, linestop As Integer
            Dim lines As List(Of String) = System.IO.File.ReadAllLines(".\tampolistview.txt").ToList
            For y As Integer = 0 To lines.Count - 2
                If lines(y).Contains("[Prochain(s) entretien(s)]") Then
                    linestop = y
                End If
            Next
            For u = linestop To lines.Count - 2
                lines.Remove(u)
            Next

  4. #4
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Ton algorithme, qui a pour objectif de supprimer des enregistrements d'un fichier, me paraît bien compliqué.
    Mon algorithme de départ serait celui-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
                    Dim UneLigne As String
                    FichierALire = New StreamReader(TFichierEntree.Text, System.Text.Encoding.Default)
                    FichierAEcrire = New StreamWriter(TFichierSortie.Text, False, System.Text.Encoding.Default)
     
                    While FichierALire.Peek > -1
                        UneLigne = FichierALire.ReadLine()
                        If NOT (UneLigne = ... ce qui est à effacer ... ) Then
                             FichierAEcrire.WriteLine( UneLigne)
                         End If
                    End While
     
                    FichierALire.Close()
                    FichierAEcrire.Close()

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut
    merci phil, je vais me débrouiller avec ce que tu me propose , merci

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

Discussions similaires

  1. Sortir d'un while qui n'est pas dans la fonction
    Par NoIdea dans le forum Débuter
    Réponses: 23
    Dernier message: 15/07/2010, 17h38
  2. Sortir d'un while prématurément
    Par SPACHFR dans le forum Débuter
    Réponses: 10
    Dernier message: 14/09/2007, 17h34
  3. cin >> pour sortir d'un while
    Par Naeco dans le forum SL & STL
    Réponses: 22
    Dernier message: 02/04/2007, 11h19
  4. Sortir de la boucle while
    Par brindacier dans le forum MATLAB
    Réponses: 7
    Dernier message: 14/03/2007, 11h53
  5. Sortir d'un while par l'appui d'une touche ?
    Par voxel dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 18/08/2004, 09h44

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