slt tout le monde
j ai un fichier .dat qui contient 50 ligne de cette maniere:
ali 5 10 01/04/1982 2
mohamed 12 14 12 12/07/1982
samir 10 /04 /12/
chams 2 15 1982
et je veut extraire les ligne qui contient le nom "samir"et “mohamed” dans un autre fichier .dat nome "nom.dat " de façon automatique.en utilisant le vb
merci e a tous.
Edité le 19/05/2010 à 10:46
Qu’est-ce qui te pose problème ?
L’ouverture des fichiers ? La lecture ligne par ligne ? La détection du mot clé dans la ligne lue ?
slt et merci pour ta réponse
je suis débutant en programmation mon problème comment faire extraire des lignes d un fichier .dat et construire de manière automatique un autre fichier .dat qui contient ses ligne avec vb ou n importe quelle application et merci
Bonjour,
Peux tu changer le titre de ton message* pour quelque chose de plus explicite ? (dans le genre “Lire un fichier en visual basic”, etc)
Merci d’avance,
*Pour éditer ton message : http://www.clubic.com/forum/img/editer_on.gif
en vbscript en s’appuyant sur :
vb.developpez.com…
vb.developpez.com…
vb.developpez.com…
www.commentcamarche.net…
c’est assez facile même si je suis encore debutant
cela donnerait en melangeant cela:
Const ForReading = 1, ForWriting = 2
Const Source = "i:\truc.dat"
Const Destination = "i:\dest.dat"
Dim oFso, f , w
'on fait une liste de noms a chercher
Dim noms (1)
noms(0) = "mohamed"
noms(1) = "samir"
' creation et/ou ouverture fichier
Set oFso = CreateObject("Scripting.FileSystemObject")
Set w = oFso.OpenTextFile(Destination, ForWriting,true)
Set f = oFso.OpenTextFile(Source, ForReading)
' tant que pas à la fin de fichier source, lire ligne et
' tester presence des mots de la liste, ecrire ligne dans dest si trouve
while Not f.AtEndOfStream
ligne = f.ReadLine
For Each x In noms
If ( InStr(1, ligne, x) ) Then
w.write ligne & vbCrLf
End If
Next
Wend
f.Close
w.Close
tu copie ce texte dans le bloc note windows
tu modifie le fichier source et destination
et sauvegarde dans un fichier en extension .vbs
tu double clique sur le fichier vbs
Edité le 19/05/2010 à 17:32
Feunoir -->
Non, ce n’est pas ce qu’il a demandé
Il veut les lignes qui contiennent “samir” ET “mohamed”
toi, tu vas aussi extraire les lignes quand elles ne contiennent que l’un des deux noms
A la réflexion, sur le fond, c’est peut être toi qui a raison, mais là ce n’est plus de la programmation, c’est de la boule de cristal.
moezmoez -->
Si le VB n’est pas imposé, tu ne t’embêtes pas à écrire un programme.
Tu utilises la commande grep, elle est faite pour ça.
A la base, c’est une commande UNIX, mais si tu es sous windows (ce doit être le cas puisque tu parles de VB), tu trouveras sur internet plein de propositions pour télécharger l’exécutable grep.exe pour l’utiliser ensuite en batch ou directement en ligne de commande.
slt
merci a votre réponse gcc sa marche bien et toi feunior je vous remercie très bien pour mon probleme de clavier avec windows 95 j ai suivie tes démarche après quelque réglage de dos 6.22 et sa marche très bien merci a vous clubic et une solution très efficaces surtout avec ses informaticien