2013-04-27 4 views
0

a: b: c: d: eextrait ligne associée de fichier texte

bb: cc: dd: ee: ff

ccc: ddd: eee: fff: ggg

J'ai un contenu de fichier texte ci-dessus. J'essaie de comparer mes entrées utilisateur avec le fichier texte. Par exemple

cc: dd

Quand il se trouve, je dois récupérer la ligne. Comment puis-je récupérer la ligne que mon utilisateur entre? J'ai essayé d'employer while(scanner.hasNext()) mais je ne pourrais pas obtenir mon résultat de désir.

+0

pouvez-vous afficher le code entier? – sanbhat

+0

avec quoi faites-vous des recherches? juste "cc: dd", ou plus de chaînes? –

Répondre

2

avec les bibliothèques Java standard:

File file = new File("file.txt"); 
String word = "abc"; 
Scanner scanner = null; 

try { 
    scanner = new Scanner(file); 
} catch(FileNotFoundException e) { 
    //handle this 
} 

//now read the file line by line 
while (scanner.hasNextLine()) { 
    String line = scanner.nextLine(); 
    if(line.contains(word)) { 
     System.out.println(line); 
    } 
} 
scanner.close(); 
+0

Merci. Était ce que je cherchais à afficher. – user1823986

+0

Vous devez fermer le scanner. En outre, à moins que "gérer ceci" inclut le lancement d'une exception, votre code risque d'utiliser un scanner nul. –

+0

Certes, nous avons besoin de cette mémoire, j'ai donc édité le code pour fermer le scanner. Le retour de 'catch' est aussi bien dans le cas de FileNotFoundException pour éviter NullPointerException. – Voicu