[Aide]fonction

sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010 - 27 déc. 2010 à 18:53
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 29 déc. 2010 à 23:44
Je vous explique mon problème
J'ai un fichier texte qui fait 85 879 459 lignes ><
J'ai ~40 mots différents et il faut que je vérifie s'il ce trouve dans ce fichier texte.
Quelqu'un aurait pas une petite fonction recherchemot dans son ordi ou dans ça tête s'il vous plait?

Ps: quoi que vous saviez éclairez moi...

Merci d'avance

13 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 déc. 2010 à 19:21
salut,

contenu_fichier.contains(...) => BOOLEAN

++
0
smilegesttech Messages postés 5 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 29 décembre 2010
27 déc. 2010 à 20:55
Bonjour,
Cela peut vous prendre plus de temps mais je vous propose de faire une petite boucle qui récupère votre texte ligne par ligne. puis chaque ligne récupérer subira une recherche de vos mots (les 40) pour ne pas ouvrir le fichier 40 fois. si t'as pas besoin de savoir le nombre d'occurrence de chaque mot, je vous propose un petit astuce. Dans une listview, à deux colonne, tu remplira tes 40 mots dans la première. la deuxième colonne on l'utilisera pour reporter l'état du mot : true s'il existe, false sinon.
le code serait similaire à ce qui suit :

Open "c:\test.txt" For Input As #1
 While Not EOF(1)
  Input #1, LigneX
  I = I + 1
  LC = "Ligne : " & I
  For I = 1 To ListMot.ListItems.Count
   If ListMot.ListItems(I).ListSubItems(1).Text = "False" Then 'ça veut dire qu'on a pas encore trouvé le mot
    If InStr(LigneX, ListMot.ListItems(I).Text) > 0 Then
     ListMot.ListItems(I).ListSubItems(1).Text = "True" 'on remet l'état à true et on la zap prochainement
    End If
   End If
 Next
 Wend
 Close #1



à la fin tu aura l'état de tous les mots !
J'espère que ça va vous aider ... j'ai testé ce code sur un fichier de 700 lignes. Le traitement prend moins d'une seconde.!!

Cordialement. Abdelhadi A.
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
27 déc. 2010 à 21:03
salut,

un petit exemple serait vraiment le bienvenue

merci ++
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
27 déc. 2010 à 21:05
oups j'ai pas eu le temps d'écrire que smile ma répondu dsl du double post
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
smilegesttech Messages postés 5 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 29 décembre 2010
27 déc. 2010 à 21:05
Re-Bonjour,
Si vous voulez avoir la source de mon code en réponse à votre message, je viens de le poster sur l'adresse : http://www.vbfrance.com/codes/RECHERCHE-LISTE-MOT-DANS-FICHIER-TEXTE_52651.aspx
Cordialement. Abdelhadi A.
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
28 déc. 2010 à 08:28
Le problème c'est que je n'ai pas visual basic 6, je n'ai que visual basic express
J'ai essayé de l'installé mais sans succès...

Ps: je suis sous wondows 7

Merci smile...
0
smilegesttech Messages postés 5 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 29 décembre 2010
28 déc. 2010 à 10:49
tu travailles dans quel IDE alors .. ? en principe ça doit être facile d'adapter le code !
NB : même sous Win7, VB6 s'installe correctement !
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
28 déc. 2010 à 15:50
Ouais...si tu pouvait me donner la marche à suivre...
J'ai été ici:
http://www.microsoft.com/downloads/fr-fr/details.aspx?FamilyID=7B9BA261-7A9C-43E7-9117-F673077FFB3C
Mais quant j'ai lancer l'application rien n'a été installé appart une .dll
Merci d'avance et désolé de mon manque de connaissance

Cordialement
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
29 déc. 2010 à 06:53
up
0
smilegesttech Messages postés 5 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 29 décembre 2010
29 déc. 2010 à 14:48
Y a pas de démarche .. tu installes et c'est tout .. sauf que si tu installes visual studio 2005 ou supérieur tu dois convertir le projet VB6 en .net . voilà !
0
sancho0o Messages postés 7 Date d'inscription lundi 27 décembre 2010 Statut Membre Dernière intervention 29 décembre 2010
29 déc. 2010 à 19:43
Désolé d'être aussi reloue mais en faite voila, j'ai bien téléchargé ton projet mais le problème c'est que c'est des extension .vbp .vbw
J'arrive pas à l'ouvrir
Une solution?

Ps: j'ai Visual basic express
0
smilegesttech Messages postés 5 Date d'inscription vendredi 14 mars 2008 Statut Membre Dernière intervention 29 décembre 2010
29 déc. 2010 à 23:07
Ben je t'ai dis .. si tu utilise visual basic express donc .Net c'est que tu dois l'adapter .. mon programme est écrit dans une version ancienne que celle que t'as .. voilà !
smilegest tech
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
29 déc. 2010 à 23:44
... ou tu relis la première réponse qui ELLE est en vb.net !
juste à boucler sur ton tableau de 40 mots...
0
Rejoignez-nous