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

Langage Java Discussion :

[Debutant] Moteur de recherche utilisant des expressions régulières


Sujet :

Langage Java

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut [Debutant] Moteur de recherche utilisant des expressions régulières
    Bonjour,
    Je souhaite créer un moteur de recherche, qui pour l'instant, rechercherait dans une dizaine de fichier txt les concepts fondamentaux, mots clés de ceux-ci.
    Pour cela, je souhaite utiliser les expressions régulières.
    J'ai créé le GUI, mais maintenant le programme doit pouvoir lire les fichiers, appliquer qques règles avec les expressions régulières, et les afficher.

    Comment faire pour que mon programme lise dans un fichier ? Y a t'il des packages ou classe de disponibles ?

  2. #2
    Membre habitué Avatar de benjiprog
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 302
    Points : 134
    Points
    134
    Par défaut
    Pour lire dans un fichier txt tu peux utiliser la classe BufferedReader.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BufferedReader objet = new BufferedReader (objet de type file)
    des choses pourraient t'interesser ici.
    Les élèves glandeurs c'est comme le linge, quand il fait beau ca sèche.

  3. #3
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Bonjour et benvenue sur le forum,
    Alors pour commencer tu dois apprendre à manipuler les flux de données (en gros les entrées/sorties ) pour cela tu peux utiliser les classes du package java.io .
    Ensuite pour les expressions régulières, tu disposes du package java.util.regex.

    Voilà tu as un peu de lecture à faire avant de coder
    Tu l'auras compris : la javadoc est ton amie


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  4. #4
    Membre régulier
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 58
    Points : 73
    Points
    73
    Par défaut
    Salut.
    Pour acceder aux informations de fichiers, il faut utiliser les classes du package java.io

    Regarde la faq java, elle explique et propose des exemples pour lire ou écrire dans des fichiers.
    http://java.developpez.com/faq/java/...ngage_fichiers
    Dans ingénieur il y a génie. Alors prouvez le !

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    merci pour toutes ces réponses. J'ai suivi ce que vous avez dit et j'ai réussi à afficher tout les mots d'un fichier txt dans mon gui classés par ordre alphabéthique et dénombrés.

    Ce que j'aimerai faire c'est utiliser une méthode qui lise tout les caractères dans mon fichier et lui appliquer des règles (expressions régulières).Car dans mon programme j'utilise StreamTokenizer qui me découpe mon fichier en mots, nombres...Ce qui n'est pas l'idéal quand on veut utiliser les expressions régulières.

    J'arrive à lire la première ligne de mon fichier grace à la méthode readLine(). Mais je n'arrive pas à lire toutes les lignes. Connaissez-vous une méthode qui retourne le nombre de lignes d'un document?

  6. #6
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Il n'y pas de méthode native pour obtenir le nombre de ligne d'un fichier. D'ailleurs : tu peux te baser la-dessus pour ton problème ( toutes les lignes ne sont pas lues ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    BufferedReader br=new BufferedReader(new FileReader("monFichier"));
    String line=null;
    int nbLignes=0;
    while((line=br.readLine())!=null){
       nbLignes++;
       System.out.println("Ligne n°"+nbLignes+" = "+line);
    }
    System.out.println("Cela fait "+nbLignes+" lignes !");

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/10/2010, 21h00
  2. Utilisation des expressions régulières dans Find/Replace
    Par Kicker dans le forum Code::Blocks
    Réponses: 1
    Dernier message: 22/06/2009, 01h20
  3. Réponses: 2
    Dernier message: 26/11/2008, 09h28
  4. Réponses: 2
    Dernier message: 08/05/2008, 20h41
  5. Réponses: 6
    Dernier message: 30/05/2007, 17h31

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