特定のファイルを見つけて、そのファイルからテキスト行を出力する方法について助けが必要です。コンソールに入力された文字列がそのテキスト行の文字列と一致すると、テキスト行が出力されます。私はjava Find ring report.txt address.txt Homework.java
を呼び出すした場合例えば、それはのようなものを印刷する必要があります:ファイルを検索して検索する方法JAVA
report.txt: has broken up an internationa ring of DVD bootleggers that
address.txt: Kris Kringle, North Pole
address.txt: Homer Simpson, Springfield
Homework.java: String file name;
指定されたワードは、常に最初のコマンドライン引数です。
これは私がこれまで持っているものです。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
/**
* Code for E11.8. Searches all files specified on the command line and prints out all lines
containing a specified word.
* @Michael Goedken
*/
public class Find
{
/**
Searches file for a word, prints out all lines containing that word.
@param wordToFind the word to find
@param filename the filename for the file to search
*/
public static void findAndPrint(String wordToFind, String filename)
{
String input = args[0];
for (int i = 1; i < args.length; i++)
{
System.out.println(" File " + args[i]);
File one = new File(args[i]);
Scanner in = new Scanner(one);
while (in.hasNext())
{
String line = in.nextLine();
if (line.contains(input))
{
System.out.println(line);
}
}
}
}
/**
First argument of the main method should be the word to be searched
For other arguments of the main method, store the file names to be examined
*/
public static void main(String[] args)
{
// call findAndPrint for each text file
}
}
コードを実行するとどうなりますか? – notyou
@pruntlar構文エラーargsの変数がありません – sdfjbs
'findAndPrint'メソッドで' args [0] 'を読み込もうとしています。 String [] args'パラメータを持っているので 'main'で動くかもしれませんが、' findAndPrint'メソッドの文脈では意味がありません。 – Aaron