嘿伙计们我写了一个程序,它向我展示了MP3.file的ID3-Tag。 现在我想通过使用write-method更改ID3-TAG中的一些内容,例如年份或标题。但我是新手使用这些类并且不知道如何使用它们。
import java.io.*;
import java.util.*;
public class MP3Auslesen {
public static void main(String[] args) {
long groesseMP3 = 0;
byte bTAG[] = new byte[3];
byte bTitel[] = new byte[30];
byte bInterpret[] = new byte[30];
byte bCDTitel[] = new byte[30];
byte bJahr[] = new byte[30];
byte bKommentar[] = new byte[30];
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("MP3-Datei: ");
String filename = in.readLine();
FileInputStream fis = new FileInputStream(filename);
groesseMP3 = fis.available();
fis.skip(groesseMP3 - 128);
fis.read(bTAG);
String strTAG = new String(bTAG);
fis.read(bTitel);
String strTitel = new String(bTitel);
fis.read(bInterpret);
String strInterpret = new String(bInterpret);
fis.read(bCDTitel);
String strCDTitel = new String(bCDTitel);
fis.read(bJahr);
String strJahr = new String(bJahr);
String strKommentar = new String(bKommentar);
fis.read(bKommentar);
byte bGenre = (byte) fis.read();
System.out.println("Dateigröße : " + groesseMP3);
System.out.println("TAG : " + strTAG);
System.out.println("Titel :" + strTitel);
System.out.println("Interpret :" + strInterpret);
System.out.println("CD-Titel : " + strCDTitel);
System.out.println("Jahr :" + strJahr);
System.out.println("Kommentar : " + strKommentar);
System.out.println("Genre : " + bGenre);
fis.close();
} catch (IOException err) {
System.out.println("Fehler" + err);
}
}
}
答案 0 :(得分:0)
我认为你不需要发明轮子"并建议使用特殊的库:
mp3agic
Beaglebuddy
Jaudiotagger
PS:请阅读如何关闭资源的正确性(自JDK 1.7起) - The try-with-resources Statement