java通過比對MD5值判斷是否是相同圖片

一:通過比對MD5值

	public static String getFileMD5(File file) {
		if (!file.isFile()) {
			return null;
		}
		// 創建MessageDigest對象,添加MD5處理
		MessageDigest digest = null;
		FileInputStream in = null;
		byte buffer[] = new byte[1024];
		int len;
		try {
			digest = MessageDigest.getInstance("MD5");
			// 讀取圖片
			in = new FileInputStream(file);
			while ((len = in.read(buffer, 0, 1024)) != -1) {
				digest.update(buffer, 0, len);
			}
			in.close();
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}

		BigInteger bigInt = new BigInteger(1, digest.digest());
		System.out.println(bigInt);
		// 返回16進製表示形式
		return bigInt.toString(16);
	}

	public static void main(String[] args) {
		File file1 = new File("134567876fhjkh.jpg");

		// String s = file1.getPath();
		File file2 = new File("2.jpg");

		String fileMD5 = getFileMD5(file1);

		String fileMD52 = getFileMD5(file2);

		System.out.println(file1.getName() + " 的MD5值是:" + fileMD5);
		System.out.println(file2.getName() + " 的MD5值是:" + fileMD52);

		if (fileMD5.equals(fileMD52)) {
			System.out.println("兩張圖片一致..");
		} else {
			System.out.println("兩張圖片不一致...");

		}

	}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章