-
///文件路径 public string GetFileHash(string filePath) { 如果(!IsFileExist(文件路径)) { 返回””; } 尝试 { byte [] data = readFile(AssetBundleReader.mWritablePath + filePath); return getDataHash(data); } catch(FileNotFoundException e) 返回NULL; } }
-
///文件 public string GetDataHash(byte [] data) { 尝试 { MD5 md5 = new MD5CryptoServiceProvider(); byte [] result = md5.ComputeHash(data); string fileMD5 =“”; 的foreach(结果中的字节b)中 { fileMD5 + = System.Convert.ToString(b,16).PadLeft(2,'0'); } return fileMD5; } catch(FileNotFoundException e) { return null; } }
//字符串
public string Md5Sum(string input)
{
System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input);
byte[] hash = md5.ComputeHash(inputBytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hash.Length; i++)
{
sb.Append(hash[i].ToString("X2"));//大 "X2",小"x2"
}
return sb.ToString();
}