编辑:编写一个程序,从文件中读取100个单词。然后,让用户搜索一个单词,直到他们进入“退出”。 该程序将从文件中读取最多100个单词。该文件可能包含或不包含100个单词,但该数组最多应包含100个(如果列表中没有足够的单词,则用空字符串填充数组的其余部分)。 读入文件后,程序将提示用户输入搜索字符串。然后程序将搜索该字符串并告诉用户该单词是否被找到。程序将继续从用户获取搜索字符串,直到用户输入“退出”
您好我需要帮助编写一个程序来从文本文件中找到一个单词
结果应该如下:
输入要搜索的单词:taco
发现了'taco'字样。
输入要搜索的单词:asd
找不到单词'asd'。
当用户输入“退出”字样时,程序将退出
以下是我到目前为止所需要的帮助以完成
import java.io.*;
import java.util.Scanner;
public class project2 {
public static void main( String[] args ) throws IOException {
String[] list;
String search;
list = load_list( "words.txt" );
search = prompt_user( "\nEnter a word to search for: " );
while ( ! search.equals( "quit" ) ) {
System.out.println( "Word '" + search + "' was" +
( ( find_word( search, list ) ) ? "" : " NOT" ) +
" found." );
search = prompt_user( "\nEnter a word to search for: " );
}
System.out.println();
}
答案 0 :(得分:1)
for(String s: list){
if(s.equals(search)){
//do whatever
}
}
答案 1 :(得分:1)
使用此:
Scanner txtscan = new Scanner(new File("filename.txt"));
while(txtscan.hasNextLine()){
String str = txtscan.nextLine();
if(str.indexOf("word") != -1){
System.out.println("EXISTS");
}
}
答案 2 :(得分:-1)
以下代码完美地回答了这个问题:
String word = ""; int val = 0;
while(!word.matches("quit"))
{
System.out.println("Enter the word to be searched for");
Scanner input = new Scanner(System.in);
word = input.next();
Scanner file = new Scanner(new File("newFile.txt"));
while(file.hasNextLine())
{
String line = file.nextLine();
if(line.indexOf(word) != -1)
{
System.out.println("Word EXISTS in the file");
val = 1;
break;
}
else
{
val = 0;
continue;
}
}
if(val == 0)
{
System.out.println("Word does not exist");
}
System.out.println("-------continue or quit--- enter continue or quit");
word = input.next();
}