Java の学習を始めたばかりで、最初の課題として、MP3 から ID3v1 タグを読み取ろうとしています。MP3 の最後の 128 バイトをバイト配列に読み込み、そこから分割しました。有効な ID3 タグが見つかったことを確認するには、配列の最初の 3 バイトを文字列に変換し、それを「TAG」と比較します。問題は、バイトから構成された文字列が「TAG」文字列と一致しないことです。Eclipse デバッガーで実行すると一致するように見えますが。
以下に使用しているコードを貼り付けました。ここで間違っていることを誰か指摘してもらえますか?
byte tagBytes[] = {84, 65, 71}; //Normally filed from a file, just here as an example.
String tagHeader = null; //String to hold tag header
tagHeader = Character.toString((char)tagBytes[0]) +
Character.toString((char)tagBytes[1]) +
Character.toString((char)tagBytes[2]);
if (tagHeader != "TAG"){
System.out.println("No ID3v1 tag found");
return null;
}