0

BufferedReader の使用が許可されていないため、コード内の befferedreader を Scanner に変更するにはどうすればよいですか?? それとも可能ですか??

public static void Option3Method() throws IOException
{ 
   FileReader fr = new FileReader("wordlist.txt");
   BufferedReader br = new BufferedReader(fr); 
   String s;
   String words[]=new String[500];
   String word = JOptionPane.showInputDialog("Enter a word to search for");
   while ((s=br.readLine())!=null)
   { 
     int indexfound=s.indexOf(word);
     if (indexfound>-1)
     { 
        JOptionPane.showMessageDialog(null, "Word was found");
     }
     else if (indexfound<-1)
     {
        JOptionPane.showMessageDialog(null, "Word was not found");}
     }
     fr.close();
   }
}
4

4 に答える 4

1

交換

FileReader fr = new FileReader("wordlist.txt"); BufferedReader br = new BufferedReader(fr);

Scanner scan = new Scanner(new File("wordlist.txt"));

そして交換

while ((s=br.readLine())!=null) {

while (scan.hasNext()) {

            s=scan.nextLine();
        }
于 2013-04-07T15:25:49.187 に答える
0

Scanner クラスを見ると、File を受け取るコンストラクターがあることがわかります。このコンストラクターは、String パスでインスタンス化できます。Scanner クラスには、readLine() と同様のメソッド、つまり nextLine() があります。

于 2013-04-07T15:26:25.330 に答える
0

ファイルを取得し、 nextLine()を使用してそのスキャナーを使用して行を読み取るスキャナーのコンストラクターを使用できます。読み取る行が他にあるかどうかを確認するには、hasNextLine()を使用します。

于 2013-04-07T15:27:09.853 に答える
0

テストはしませんでしたが、動作するはずです。

public static void Option3Method() throws IOException
{ 
   Scanner scan = new Scanner(new File("wordlist.txt"));
   String s;
   String words[]=new String[500];
   String word = JOptionPane.showInputDialog("Enter a word to search for");
   while (scan.hasNextLine())
   { 
     s = scan.nextLine();
     int indexfound=s.indexOf(word);
     if (indexfound>-1)
     { 
        JOptionPane.showMessageDialog(null, "Word was found");
     }
     else if (indexfound<-1)
     {
        JOptionPane.showMessageDialog(null, "Word was not found");}
     }
   }
}
于 2013-04-07T15:30:10.253 に答える