我想操纵MP3文件中的ID3标签使用Java ID3 Tag Library。然而,当我尝试使用“MP3File”类来做任何事情时,我得到IOException:负查找偏移;如何解决Java IOException:负查找偏移量? (Java的ID3标签库)
下面是一个示例代码和堆栈跟踪:
package com.test;
import java.io.File;
import java.io.IOException;
import org.farng.mp3.MP3File;
import org.farng.mp3.TagException;
public class MP3Test {
public static void main(String[] args) throws IOException, TagException {
File f = new File("test.mp3");
MP3File mp = new MP3File(f);
System.out.println(mp.getFrequency());
}
}
--------------------------------------------------------------------------------
Exception in thread "main" java.io.IOException: Negative seek offset
at java.io.RandomAccessFile.seek(Native Method)
at org.farng.mp3.id3.ID3v1.seek(Unknown Source)
at org.farng.mp3.id3.ID3v1.read(Unknown Source)
at org.farng.mp3.id3.ID3v1.<init>(Unknown Source)
at org.farng.mp3.MP3File.<init>(Unknown Source)
at org.farng.mp3.MP3File.<init>(Unknown Source)
at com.test.MP3Test.main(MP3Test.java:15)
正如你看到的,甚至是基本的操作抛出了我的异常,使得它真的很难,我真的开发的东西... MP3文件,我正在努力阅读的工作完全正常。那么,为什么会发生这种情况和/或如何解决它?
我怀疑文件已损坏。试试另一个。 – EJP 2013-03-09 01:11:03
@EJP有个好主意。尝试一些找到的MP3文件[这里](http://pscode.org/media/#sound)。 – 2013-03-09 01:16:18
谢谢你们。其实,我第一次认为这是tat,所以,我尝试了另一个文件,另一个,另一个...尝试了超过30个文件,并得到了同样的例外。现在我已经尝试使用@AndrewThompson建议的网站中的这些文件,并得到相同的异常:/ – 2013-03-09 01:25:57