MD5.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.IO;
  5. namespace CommonLang
  6. {
  7. public static class CMD5
  8. {
  9. public static string CalculateMD5(Stream stream)
  10. {
  11. System.Security.Cryptography.MD5 md5Hasher = System.Security.Cryptography.MD5.Create();
  12. md5Hasher.ComputeHash(stream);
  13. return CUtils.ToHexString(md5Hasher.Hash);
  14. }
  15. public static string CalculateMD5(byte[] data)
  16. {
  17. using (MemoryStream ms = new MemoryStream(data))
  18. {
  19. return CalculateMD5(ms);
  20. }
  21. }
  22. public static string CalculateMD5(string text, Encoding encoding)
  23. {
  24. using (MemoryStream ms = new MemoryStream(encoding.GetBytes(text)))
  25. {
  26. return CalculateMD5(ms);
  27. }
  28. }
  29. public static string CalculateMD5(FileInfo file)
  30. {
  31. using (FileStream ms = new FileStream(file.FullName, FileMode.Open, FileAccess.Read))
  32. {
  33. return CalculateMD5(ms);
  34. }
  35. }
  36. }
  37. }