URGENT ! : Rechercher un fichier pdf contenant un texte précis

catisback Messages postés 11 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 25 juillet 2007 - 23 juil. 2007 à 14:07
loukilaiman Messages postés 5 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 18 avril 2008 - 18 avril 2008 à 10:00
Bonjour à tous

Je cherche un code me permettant (à l'aide des api Windows par exemple) de
rechercher un fichier pdf contenant une chaine de caractère précise. Un peu
comme le fait la recherche de fichiers de Windows quand on lui demande "Un
mot ou une phrase dans le fichier".

Quelqu'un a-t-il une idée ?

Merci par avance

7 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 juil. 2007 à 22:42
Bonjour,

Je ne sais pas si tu as remarqué le temps que prenait Windows pour faire une telle recherche
depuis l'esplorateur... Un certain temps... pour ne pas dire un temps certain...
Que fait-il ? Il va de repertoire en répertoire, de fichier en fichier... ouvre chacun des fichiers (un par un)
et y recherche l'occurence en cause. S'il la trouve : il ajoute le fichier concerné dans une liste de résultats.

Tu peux réinventer la roue et faire la même chose ... et envoyer tes résultats positifs dans une listbox.
Mais dis-toi bien que "ça va ramer dur", ton affaire !....

Comment parcourir ainsi tous les fichiers de tous les répertoires et sous-répertoires ?
That's the question !
Et la réponse est : exactement de la même façon récursive que pour copier un répertoire, ses sous-répertoires
et tous mles fichiers qu'ils contiennent. Tu as pour comprendre ce mécanisme une source (au moins une)
déposée (copie d'un répertoire). Vas-y donc...
0
catisback Messages postés 11 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 25 juillet 2007
24 juil. 2007 à 09:15
Merci pour la réponse de jmfmarques.

1 explication, 1 petit problème...

L'explication : Je dois en réaliter fusionner deux fichiers pdf le premier en se basant sur son nom, le deuxième contenant
dans son texte, le nom du premier. D'où le fait que je doive rechercher une chaine de caractère dans un fichier (mais dans un dossier spécifié pour gagner du temps)

Le petit problème : Je ne trouve pas la source dont tu me parles : peux-tu me poster le lien ?

Par avance : merci
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 juil. 2007 à 09:25
Re,

Attends,

Si tu sais dans quel répertoire est ton second fichier, il y a mieux à faire que
de te lancer dans la récursivité.

On en reparle dans deux heures (je dois sortir)...
A +
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 juil. 2007 à 11:19
Bon,... me voilà de retour...

Tu disais donc connaître le répertoire...
Inutile alors d'aller fouiller partout !
Regarde ce que fait ceci (avec un bouton de commande Command1 et une listbox List1 :

Private Sub Command1_Click()
  chemin = "c:\ton_repertoire"
  fic = Dir(chemin & "*.pdf")
  Do While fic <> ""
     List1.AddItem fic
     fic = Dir
   Loop
End Sub

Tu observes que tu es ainsi capable de lister tous les fichiers pdf de ton_répertoire

Que te faut-il alors faire ?
Fastoche :
Au lieu d'envoyer dans une listbox chacun des fichiers :

tu l'ouvres
tu y recherches ton occurrence
si tu ne la trouve pas tu ne fais rien
si tu la trouves, tu exécutes les instructions de ton choix


 


 


De cette manière : chacun des fichiers pdf de ton_répertoire sera recense, ouvert, lu ... et objet de tes décisions.


 


Pour ce qui est de l'ouverture d'un fichier et de la recherche d'une occurrence , tu as sur ce forum une foultitude d'exemples.


 


Allez.... A toi maintenant de travailler (ce qui manque ici est maintenant vrfaiment peu).
0

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

Posez votre question
catisback Messages postés 11 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 25 juillet 2007
24 juil. 2007 à 12:35
Merci pour ton bout de code, mais le hic est bien dans le fait de " l'ouverture d'un fichier et
de la recherche d'une occurrence " quand il s'agit d'un pdf !
Si les fichiers étaient des fichiers texte ca ne me poserait aucun problème. Essaye d'ouvrir
un pdf à l'aide d'un éditeur de texte genre Notepad et tu comprendras qu'il n'y a rien de
clairement identifiable dedans.. si au moins je pouvais le traduire dans une chaine de caractères
compréhensible... j'ai essayé des outils de conversion de pdf en txt, mais ils ne possèdent pas d'ocxa
ou sont beaucoup trop lents (temps d'écriture sur le disque...) pour que ce soit acceptable pour mon
client (imaginons une recherche dans 200 ou 300 fichiers éventuellement).
Sinon je sais qu'il existe des ocx qui font ce genre de boulot mais, pour celles que je connais, elles coutent
entre 300 et 950 $ : trop cher pour moi !

Alors, si tu as une idée la dessus...
0
catisback Messages postés 11 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 25 juillet 2007
25 juil. 2007 à 12:29
Pour ceux que ça peut interresser, j'ai trouvé une solution passant par Acrobat Pro (malheureusement pas par Reader)
0
loukilaiman Messages postés 5 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 18 avril 2008
18 avril 2008 à 10:00
@ catisback
Bonjour,
J'ai le même problème que toi. si vous pouvez me décrire la solution que tu as adopté.
Merci
0
Rejoignez-nous