2013-03-06 41 views
2

我是新来的,我不知道该怎么办?我想比较两个MP3文件并检查它们是相同还是不同。我想检查它的内容。请帮帮我。我到处搜索,但没有得到任何东西。用于比较MP3内容的java api?

+0

为什么它一定需要是一个mp3 API,难道你只是比较文件大小或将文件是不同的大小,但包含相同的歌曲? – david99world 2013-03-06 10:08:47

+0

什么意思'MP3内容“? ID3?字节码? – oliholz 2013-03-06 10:08:58

+0

我想检查它们是否包含相同的歌曲 – Vinay 2013-03-06 10:12:12

回答

1

您可以使用Guava Libraries

执行crc32校验和计算

File myfile1 = new File("file1.mp3"); 
long checksum1 = Files.getChecksum(myfile1 , new java.util.zip.CRC32()); 

File myfile2 = new File("file2.mp3"); 
long checksum2 = Files.getChecksum(myfile2 , new java.util.zip.CRC32()); 

if (checksum1 == checksum2) { 
    System.out.println(" Both are same "); 
    // your business logic 
} 

如果您不满意校验,并希望做一个sha-256摘要计算

byte[] digest = Files.getDigest(myfile1 , MessageDigest.getInstance("SHA-256")); 
+0

或计算没有额外的lib校验和:http://stackoverflow.com/a/304350/1165132 – Adrian 2013-03-06 10:13:34

+2

这将失败,如果文件被重新压缩等.. – 2013-03-06 10:13:59

+0

@JohannesKuhn是我同意... – AurA 2013-03-06 10:16:54