Supprimer section dans ini

Contenu du snippet

Sur le forum, beaucoup on demander comment on pouvait supprimer des sections dans les fichier Ini. Moi même, j'ai poser la question. Mais finalement ne recevant pas réponse, je me suis penché sur le problème. Et j'ai trouvé la solution. Voilà je vous dévoile la fonction.
Attention !!! ObjectDext est un TextBox ou un Label

Allez bonne prog.
P.S : Si vous trouvé plus simple veuillez me le faire parvenir.
Inc@nus.

Source / Exemple :


Private Function SupprimerDansIni(FichierPathOpen As String, ObjectDest As Object, Section As String)
'ObjectDest est un TextBox ou un Label
    
'Déclaration des variable
    Dim Suite As String
    Dim LigneLue As String
'Mise à zéro de suite
    Suite = 0

'Nettoyage de l'object
    ObjectDest = ""

'Ouverture du fichier en mode lecture
    Open FichierPathOpen For Input As #1
    'Jusqu'à la fin du fichier ...
        Do Until EOF(1)
        '... la ligne lue est ...
            Line Input #1, LigneLue
            '... Si cette ligne lue est égale à la section à supprimer alors...
                If LigneLue = "[" & Section & "]" Then
            '...suite=2...
                    Suite = 2
            '...Sinon si le première caractère de gauche est [ alors...
                ElseIf Left(LigneLue, 1) = "[" Then
                '...Si notre object n'est pas vide alors...
                    If ObjectDest <> "" Then
                '...notre object est égal au contenu de cet object + une nouvelle ligne + la ligne lue...
                        ObjectDest = ObjectDest + vbNewLine + LigneLue
                '...sinon si notre object est vide alors...
                    Else
                '...notre object est égal à la ligne lue...
                        ObjectDest = LigneLue
                '...fin de cette condition...
                    End If
            '... suite=1...
                    Suite = 1
            '...Sinon si suite=1 alors...
                ElseIf Suite = 1 Then
                '...Si notre object n'est pas vide alors...
                    If ObjectDest <> "" Then
                '...notre object est égal au contenu de cet object + une nouvelle ligne + la ligne lue...
                        ObjectDest = ObjectDest + vbNewLine + LigneLue
                '...sinon si notre object est vide alors...
                    Else
                '...notre object est égal à la ligne lue...
                        ObjectDest = LigneLue
                '...fin de cette condition...
                    End If
            '...fin de cette condition...
                End If
    '... et on recommence.
        Loop
'Fermeture du fichier ouvert
    Close #1
'On réouvre ce fichier...
    Open FichierPathOpen For Output As #1
'...pour y inscrir le contenu de notre object...
        Print #1, ObjectDest
'...puis on le ferme
    Close #1
'Et enfin on vide notre object
    ObjectDest = ""

End Function

Conclusion :


Pour l'utiliser : il faut un TextBox appelé Text1 et un CommandButton appelé cmdSupprimer
Sub cmdSupprimer_Click
Call SupprimerDansIni ("Nom du Fichier",Text1,"Section1')
End Sub

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.