【问题标题】:how to decode ID3V2 tag fetched using jid3lib-0.5.4如何解码使用 jid3lib-0.5.4 获取的 ID3V2 标签
【发布时间】:2013-01-13 09:01:29
【问题描述】:

我正在尝试使用 Java 中的 jid3lib 从 MP3 文件中查找 ID3V2 标签。但我得到了凌乱的字符串。这是我的代码:

import org.farng.mp3.MP3File;
import org.farng.mp3.id3.AbstractID3v2;

public class NewClass {
    public static void main(String [] args){
        try{
            MP3File file = new MP3File("c:\\2.mp3");
            AbstractID3v2 tag = file.getID3v2Tag();
            String str = tag.getAuthorComposer();
            System.out.println("Lenght: "+str.length());
            for(int i = 0; i < str.length(); i++){
                char ch = str.charAt(i);
                System.out.println(i+": "+"'"+(ch)+"' : "+((int)ch));
            }
            System.out.println(str);

        }catch(Exception e){
            e.printStackTrace();
        }
    }
}

我得到以下输出:

Lenght: 35
0: '�' : 65533
1: '�' : 65533
2: 'H' : 72
3: ' ' : 0
4: 'i' : 105
5: ' ' : 0
6: 'm' : 109
7: ' ' : 0
8: 'e' : 101
9: ' ' : 0
10: 's' : 115
11: ' ' : 0
12: 'h' : 104
13: ' ' : 0
14: ' ' : 32
15: ' ' : 0
16: 'R' : 82
17: ' ' : 0
18: 'e' : 101
19: ' ' : 0
20: 's' : 115
21: ' ' : 0
22: 'h' : 104
23: ' ' : 0
24: 'a' : 97
25: ' ' : 0
26: 'm' : 109
27: ' ' : 0
28: 'm' : 109
29: ' ' : 0
30: 'i' : 105
31: ' ' : 0
32: 'y' : 121
33: ' ' : 0
34: 'a' : 97
��H i m e s h   R e s h a m m i y a

但在 Windows 资源管理器中,它显示正确的“Himesh Reshammiya”。

如何在 java 中得到这个正确的字符串,或者任何解码这个字符串的解决方案?

我认为这可能是某种字符编码。提前致谢

【问题讨论】:

    标签: java character-encoding id3v2


    【解决方案1】:

    我会冒险猜测该库不支持 UTF-16 编码文本,这似乎是(输出中列出的前两个字符是 BOM)。

    您可能应该使用此处列出的库之一: http://id3.org/Implementations

    查看 Java 版本,这可能是一个不错的选择: https://github.com/mpatric/mp3agic

    它说它在页面上支持 Unicode。

    【讨论】:

      【解决方案2】:

      可能的解决方法:

      replaceAll("\\s","")
      

      这会删除所有空格和不可见字符。

      【讨论】:

      • 不删除 NUL 或 unicode 替换字符,只删除空格。
      【解决方案3】:

      3: ' ' : 0 你的问题是我看到的吗?

      只需将这个 ' ' 字符(没有空格)放在一个 new Integer() 中,它必须等于 0。

      【讨论】:

        【解决方案4】:

        使用 mp3agic.. 这很棒..... http://mpatric.github.io/mp3agic/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-04-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-27
          • 1970-01-01
          相关资源
          最近更新 更多