源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

下载软件后使用c#获取文件的md5码示例

  • 时间:2020-06-17 15:47 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:下载软件后使用c#获取文件的md5码示例
很多朋友在下载文件的时候,经常会发现网站提供了MD5校验码,其实这个MD5码的作用就是当你下载文件好了之后,拿你下载好的文件的MD5校验码,跟下载网站提供的进行比较,如果完全一致,说明你下载中文件没问题,如果校验码不一致,说明下载过程中你的文件出错了,或者是你的文件下载出错了,反正就是跟原始文件不一致。而且只要是文件不一样,MD5码肯定不一样,这个是不会重复的,那么到底如何获取文件的MD5码呢?下面就使用C#代码进行讲解。
[u]复制代码[/u] 代码如下:
//----------------------------------------------------------------------- using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Security; using System.Security.Cryptography; using System.IO; namespace MD5FileForm {     public partial class MD5Form : Form     {         public MD5Form()         {             InitializeComponent();         }         private void btnGetMD5_Click(object sender, EventArgs e)         {             MD5 md5 = MD5.Create();             OpenFileDialog ofd = new OpenFileDialog();             ofd.ShowDialog();             FileStream fs = new FileStream(ofd.FileName, FileMode.Open);             byte[] bs = md5.ComputeHash(fs);             //获取到MD5码             string md5Str = BitConverter.ToString(bs).Replace("-","");             MessageBox.Show(string.Format("[{0}]的MD5码为:\n{1}",ofd.FileName,md5Str));         }     } }
第二个使用示例
[u]复制代码[/u] 代码如下:
using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Test {     public class MD5Code     {         /// <summary>         /// 获取文件的MD5码         /// </summary>         /// <param name="fileName">传入的文件名(含路径及后缀名)</param>         /// <returns></returns>         public string GetMD5HashFromFile(string fileName)         {             try             {                 FileStream file = new FileStream(fileName, System.IO.FileMode.Open);                 MD5 md5 = new MD5CryptoServiceProvider();                 byte[] retVal = md5.ComputeHash(file);                 file.Close();                 StringBuilder sb = new StringBuilder();                 for (int i = 0; i < retVal.Length; i++)                 {                     sb.Append(retVal[i].ToString("x2"));                 }                 return sb.ToString();             }             catch (Exception ex)             {                 throw new Exception("GetMD5HashFromFile() fail,error:" + ex.Message);             }         }     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部