C'est la méthode que je suis en train de faire:Java comparant les fichiers avec BufferedReader
static void filter(BufferedReader orders, BufferedReader in,
BufferedWriter out) throws IOException
L'objectif est de lire un fichier texte avec le dans le lecteur, puis vérifier si les phrases contiennent les mots-clés qui sont stockés dans un autre fichier texte avec le lecteur d'ordres, et si les phrases contiennent ces mots-clés, écrivez-les dans un autre fichier texte sans scripteur.
Je l'ai fait jusqu'à présent: Maintenant
static void filter(BufferedReader orders, BufferedReader in,
BufferedWriter out) throws IOException{
BufferedReader ordersf = new BufferedReader(new FileReader("order_filter.txt"));
BufferedReader inf = new BufferedReader(new FileReader("hamlet.txt"));
BufferedWriter outf = new BufferedWriter(new FileWriter("out_filter.txt"));
String line = inf.readLine();
while(line != null){
String filter = ordersf.readLine();
if(filter.equals(line))
outf.write(" "+line);
}
ordersf.close();
inf.close();
outf.close();
}
Je n'ai aucune idée sur la façon de comparer les mots clés contenus dans order_filter.txt
les phrases hamlet.txt
Je vous serais reconnaissant de l'aide.
Quelle est la taille des fichiers? Est-il possible de stocker le contenu en mémoire? –
Les fichiers sont vraiment petits, plus un seul a 27Mb, et il est possible oui. – eXistanCe
Ensuite, je suggère de charger chaque fichier dans un HashSet puis de trouver quelles clés dans le premier HashSet ne correspondent pas à une clé dans le second. –