Aller à la dernière ligne d'un fichier texte et recherche une chaine de caractér [Résolu]

Messages postés
16
Date d'inscription
jeudi 27 janvier 2005
Dernière intervention
8 décembre 2005
- - Dernière réponse : ARENIUS
Messages postés
16
Date d'inscription
jeudi 27 janvier 2005
Dernière intervention
8 décembre 2005
- 25 oct. 2005 à 15:09
Bonjour à tous,

Voila je suis un gros débutant en VB alors excusez mes questions qui peuvent sembler triviales à certains
Voila j'ai ouvert un fichier texte en lecture et je cherche à aller à la dernière ligne de celui ci et y rechercher ensuite la chaîne de caractère "défaut". Si la chaîne défaut est trouvée il faudra alors lancer une fonction.
Quelle est la manière la plus simple de faire ça ?

Quelqu'un m'a suggéré d'utiliser le fileobjectsystem et l'object textstream mais ceux ci ne sont pas présents sur VB 6.0 à moins que je me trompe...

Merci

A+
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
106
Date d'inscription
lundi 16 décembre 2002
Dernière intervention
28 octobre 2005
3
Merci
Essaye ce code :

Open fichier For Input As 1 'fichier : nom du fichier
Do While EOF(1) = False
Line Input #1, DernierLigne
Loop
Close 1

For i = 1 To Len(DernierLigne)
If Mid$(DernierLigne, 1, 6) = "défaut" Then
Call Fonction
Exit Sub 'si tu ne veux rien ajouter après
End If
Next i


N.B: Dans ce code "défaut" ne doit pas être orthographié "Défaut" ou "dÉfAut" par exmple

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
29
0
Merci
salut,
[VB6]
tu lis tout le fichier dans une variable.
tu cherches le dernier retour chariot (donc début de la dernière ligne)
tu cherches la position de ton mot.
si la position est > 0, alors il existe.


Option Explicit
'
'
Private Sub Command1_Click()
Dim FF As Integer, sMonFichier As String, sDerniereLigne
FF = FreeFile

' reçoit fichier complet
Open "C:\truc.txt" For Input As #FF
sMonFichier = Input (LOF(FF), 1)
Close #FF

' retourne la dernière ligne
' ATTENTION, on cherche pas au 1er carac, car souvent fichier terminé par VbCrLf
' donc... ligne vide
sDerniereLigne = Right$(sMonFichier, Len(sMonFichier) - InStrRev(sMonFichier, vbCrLf, 2) - 1)

' cherche "défaut"
If InStr(1, sDerniereLigne, "défaut") > 0 Then
MsgBox "ouaip, trouvé", 32
Else
MsgBox "nan, y'a pas...", 32
End If
End Sub



<SMALL> Coloration syntaxique automatique [AFCK]</SMALL>


++
PCPT [AFCK]
Messages postés
16
Date d'inscription
jeudi 27 janvier 2005
Dernière intervention
8 décembre 2005
0
Merci
Merci pour vos réponses aussi rapides :D

Je teste vos solutions tout de suite

A+

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.