今天我們來寫寫工具類,這個類有什么用呢?
也就是無論你做什么項目,這個工具類你都可以拿來用,之所以通用,是可以適用所有項目。
這節我主要講如何生成文件的MD5碼。
那么這個MD5是個什么鬼東西,讀者可以自行百度,其實簡略的講就是驗證文件是否被篡改。
什么意思,比如當你去網站下載游戲的客戶端軟件,當有些黑客喜歡搞出點不好的事情,在你的客戶端加些惡意代碼之類的。
當黑客改了客戶端文件,隨之這個文件的MD5也改變了。所以我們只要驗證用戶下載的客戶端的MD5和網站提供的MD5碼是否一致,來判斷是否要下載。
所以這個MD5是非常有用的,c#也自帶MD5庫。
public static String BuildFileMd5(String filename) { String filemd5 = null; try { using (var fileStream = File.OpenRead(filename)) { var md5 = MD5.Create(); var fileMD5Bytes = md5.ComputeHash(fileStream);//計算指定Stream 對象的哈希值 filemd5 = FormatMD5(fileMD5Bytes); } } catch (System.Exception ex) { LoggerHelper.Except(ex); } return filemd5; }
public static string FormatMD5(Byte[] data) { return System.BitConverter.ToString(data).Replace("-", "").ToLower();//將byte[]裝換成字符串 }
將這段代碼寫到Utils類中,以后如果要用到計算MD5碼的,直接Utils.BuildFileMd5(path),就可以取到這個文件的md5。
是不是很簡單,ok,之后我會持續更新一些使用的通用工具方法。