很多朋友在下載文件的時(shí)候,經(jīng)常會(huì)發(fā)現(xiàn)網(wǎng)站提供了MD5校驗(yàn)碼,其實(shí)這個(gè)MD5碼的作用就是當(dāng)你下載文件好了之后,拿你下載好的文件的MD5校驗(yàn)碼,跟下載網(wǎng)站提供的進(jìn)行比較,如果完全一致,說(shuō)明你下載中文件沒(méi)問(wèn)題,如果校驗(yàn)碼不一致,說(shuō)明下載過(guò)程中你的文件出錯(cuò)了,或者是你的文件下載出錯(cuò)了,反正就是跟原始文件不一致。而且只要是文件不一樣,MD5碼肯定不一樣,這個(gè)是不會(huì)重復(fù)的,那么到底如何獲取文件的MD5碼呢?下面就使用C#代碼進(jìn)行講解。
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));
}
}
}