package com.fuzamei.util;

import java.io.File;
import java.io.IOException;

import org.springframework.web.multipart.MultipartFile;

public final class CalculateFileHashUtil {
	private CalculateFileHashUtil() {
		throw new AssertionError("instaniation is not permitted");
	}
	
	/**
	* @Description: TODO(通过产生临时文件的形式计算hash值)
	* @param @param file
	* @param @return    设定文件
	* @return String    返回类型
	* @author ylx
	* @date 2018年1月10日 下午4:05:07
	 */
	public static final String calculateHash(MultipartFile file) {
		File tempFile=null;
		try {
			tempFile = File.createTempFile(String.valueOf(System.currentTimeMillis()),"");
			file.transferTo(tempFile);
			String hash = HashXiZhiUtil.getMD5Checksum(tempFile);
			return hash;
		} catch (Exception e) {
			throw new RuntimeException("文件计算hash值出现异常");
		}finally{
			if(tempFile!=null){
				tempFile.delete();
			}
		}
	}
}
