1

私のタイトルが言うように。ファイルから文字列を検索する必要があります。見つかったら、次の行が必要です。次のようなファイルです。

こんにちは

世界

「hello」が見つかったら、「world」を返す必要があります。

File file = new File("testfile");
Scanner scanner = null;
try {
  scanner = new Scanner(file);
} catch (FileNotFoundException e) {
  e.printStackTrace();
}

if (scanner != null) {
  String line;
  while (scanner.hasNextLine()) {
    line = scanner.nextLine();
    if (line == "hello") {
      line = scanner.nextLine();
      System.out.println(line);
    }
  }
}

ファイルを読み取りますが、「hello」という単語が見つかりません。

4

3 に答える 3

5
if (line == "hello") {

する必要があります

if ("hello".equals(line)) {

equals() メソッドを使用して、2 つの文字列オブジェクトが等しいかどうかを確認する必要があります。==String (およびすべてのオブジェクト) の場合の operator は、2 つの参照変数が同じオブジェクトを参照しているかどうかのみをチェックします。

于 2013-02-23T20:01:20.417 に答える
1
if (line == "hello")

に変更する必要があります

if (line.contains("hello"))
于 2013-06-28T07:01:44.643 に答える