[java]用md5來判斷兩個文件是否完全相同


1. 前言

  由於相比較兩張圖片是否是相同,如果通過像素點比較感覺速度比較慢,當很多圖片進行比較時,效率就低很多了。由於每個文件md5基本上是唯一的,所以用獲取文件的md5來判斷是否相同文件。

2. 代碼如下:

import java.io.FileInputStream;
import java.io.IOException;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.io.IOUtils;

public class TestMd5 {

  public static void main(String[] args) throws IOException {
	// TODO Auto-generated method stub	
	String path="C:\\Test\\img\\p1.jpg"; 
	String path2="C:\\Test\\img\\p2.jpg"; 
        
        FileInputStream fis= new FileInputStream(path);    
        String md5 = DigestUtils.md5Hex(IOUtils.toByteArray(fis));    
        IOUtils.closeQuietly(fis);    
        System.out.println("p1_MD5:"+md5); 
        
        FileInputStream fis2= new FileInputStream(path2);    
        String md52 = DigestUtils.md5Hex(IOUtils.toByteArray(fis2));    
        IOUtils.closeQuietly(fis2);    
        System.out.println("p2_MD5:"+md52); 
		
	}
}

執行后的log如下:

p1_MD5:699418360ea96b76c0d4cb701decd2e7
p2_MD5:699418360ea96b76c0d4cb701decd2e7

3. 圖片資源

link: p1.jpg p2.jpg is just rename p1.jpg.

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM