.文件加密数据结构优化
这么多方法,有许多方法大多数代码还都是重复的,如何让代码更精简呢?重构,提高代码的复用率,最初想的是建一个基类,其他各种具体实现都在继承它,但又觉得好麻烦,要新建好几个类,最终决定,建一个类,用最简单的重构,封装方法。
最终加密帮助类实现代码如下:
- public static class ValidHelper {
- public static string GetFileHash(string filePath, HashAlgorithm algorithm) {
- FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); byte[] result = algorithm.ComputeHash(fs);
- algorithm.Clear(); StringBuilder sb = new StringBuilder();
- for (int i = ; i < result.Length; i++) {
- sb.Append(result[i].ToString("X")); }
- return sb.ToString(); }
- public static string GetFileMD(string filePath)
- { MDCryptoServiceProvider md = new MDCryptoServiceProvider();
- return GetFileHash(filePath, md); }
- public static string GetFileSHA(string filePath)










