.rtf ファイルから印刷しようとしていますが、if ステートメントが壊れているようです。出力が最初の出力行として出力され、ユーザーが検索している曲と、フォーマットされていない歌詞が表示されます。それ以外は、コードは while ループをループするだけです。ヒットしたときに曲を見つけていないようif(line.contains(song)){
です。今のところ、ファイルの場所をハードコーディングしているだけですが、機能するようになったら、メソッドでユーザー入力を使用するようにします。
どんな助けでも大歓迎です。
public static void main(String[] args){
lyricsSearch("/Users/adam/Documents/Final/BlackDahliaMurder/", "miasma.rtf");
}
public static void lyricsSearch(String artist, String song){
try {
String stringSearch = song;
// Opens the album file as a buffered reader
BufferedReader bf = new
BufferedReader(new FileReader("/Users/adam/Documents/Final/BlackDahliaMurder/miasma.rtf"));
// Let the user know what we are searching for
System.out.println("Searching for " + song + "...");
// Loop through each line, parsing.
String line;
while (( line = bf.readLine()) != null){
System.out.println(line);
if (line.contains(song)){
String[] songInfo = line.split("\\|");
System.out.println(Arrays.toString(songInfo));
}
}
bf.close();
}
catch (IOException e) {
System.out.println("IO Error Occurred: " + e.toString());
}
}