IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[C# 2.0]Quelle dll pour recherche de mots -fichiers?


Sujet :

C#

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut [C# 2.0]Quelle dll pour recherche de mots -fichiers?
    salut
    je voulais savoir si quelqu'un connaissait une assembly qui permettrait de faire comme dans la barre google de la recherche de mots dans n'importe quel type de fichier.

    merci

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut Re: [Outils][2.0]Quelle dll pour recherche de mots -- fichie
    Citation Envoyé par rattlehead
    salut
    je voulais savoir si quelqu'un connaissait une assembly qui permettrait de faire comme dans la barre google de la recherche de mots dans n'importe quel type de fichier.

    merci
    Il me semble que VB.Net 2.0 permet de le faire soi même simplement avec les nouveautés telles que Microsoft.VisualBasic.FileIO Namespace

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    en fait ca n'est pas tout à fait ce que je recherche. ce serait plutot du genre j'ouvre mon fichier texte, word, pdf image etc... et je regarde si mon mot y est. bon c'est surement illusoire mais bon sait on jamais ;-)
    si j'avais au moins word et pdf ca le ferait.

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Dans ce cas en effet, ta solution devrait encapsuler plusieurs dll de type FileParser pour un format donné. Mis à part le format txt qui est simple à implémenter soi-même; tu devrais trouver sur le web les équivalents au moins pour .doc, .rtf, .cvs ...
    Ainsi ton interface utilisateur ne serait qu'un OpenFileDialog et un TextBox de saisie de mot(s). La couche métier, en fonction de l'extension du fichier choisi appellerait la dll adéquate en lui passant le path et le(s) mot(s). Les dll à trouver doivent certainement utiliser l'Espace de noms System.Text.RegularExpression

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    ok mais généralement quand tu ouvres un fichier tu te retrouves avec des bytes du coups comment tu les manipules. généralement je me sers de FileStream. tu vois ce que je veux dire?

  6. #6
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par rattlehead
    ... généralement je me sers de FileStream. tu vois ce que je veux dire?
    Certes, cependant System.IO est un peu plus riche n'est-ce pas
    Classe StreamReader
    Méthode StreamReader.ReadToEnd

  7. #7
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    avec le streamreader tu perds les caractères accentués. c'est pour cela que je me sers de filestream. Sinon voici ce que j'ai fait. je lis mon fichier en byte. je convertis la chaine que je recherche en byte. et je compare. et en même temps je convertis chaque byte en sa valeur en char que j'ajoute à un stringbuilder. comme ca je peux faire une recherche sur le stringbuilder avec une expression régulière le cas échéant. Mais bon ca marchouille on va dire. si le pdf par exemple n'est pas trop compressé ca le fait. mais sinon c'est mort. pour les .doc ca marche plutot pas trop mal. mais j'aurais quand aimé trouvé une assembly free qui le fait.

  8. #8
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par rattlehead
    avec le streamreader tu perds les caractères accentués.
    : pas du tout puisqu'il y a un constructeur surchargé avec un paramètre Encoding qui permet de maintenir notamment les caractères accentués notamment

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    autant pour moi je n'avais pas vu toutes les surcharges.
    Sinon j'ai trouvé mon bonheur. en fait c'est un dev libre de java qui a été porté en .Net et qui s'appelle Lucene. ca fait du full text search. il existe un autre produit libre qui s'appelle seekafile et qui va plus loin vu qu'il indexe même les fichiers pdf. Bref ca le fait.
    merci.

  10. #10
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    ok merci, pour ceux interressés je n'ai pas trouvé de lien valide vers cette librairie .Net Peux-tu nous fournir un lien valable :

  11. #11
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    voici le lien:
    http://www.seekafile.org/
    Sinon il existe la solution microsoft qui s'appelle indexing service. c'est un service qui indexe les fichiers. mais pour pouvoir indexer des fichiers type pdf ou autres il faut mater sur le net pour voir si personne n'a implémenté une dll basé sur IFilter. Mais microsoft en fournit quelques uns pour par exemple les fichiers visio, rtf.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quelle distrib pour un serveur de fichier ?
    Par marveljojo75 dans le forum Distributions
    Réponses: 4
    Dernier message: 22/12/2010, 08h49
  2. vbs pour rechercher-remplacer par fichier spécifique
    Par chicano dans le forum VBScript
    Réponses: 7
    Dernier message: 17/03/2009, 13h25
  3. User pour recherche par mot clé
    Par janobrasil dans le forum VBA PowerPoint
    Réponses: 6
    Dernier message: 28/10/2008, 13h54
  4. Réponses: 2
    Dernier message: 16/12/2006, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo