2020年11月29日
Jerry
3862
2021年1月17日
升级过程中需要计算MD5,于是写了个小程序实现MD5的计算。
主要分为两部分:1)字符串的MD5生成;2)文件的MD5生成。
界面如下:
1、字符串加密实现
/// <summary>
/// 字符串MD5加密
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button7_Click(object sender, EventArgs e)
{
if (textBox2.Text != "")
{
string txt = textBox2.Text;
using (MD5 mi = MD5.Create())
{
byte[] buffer = Encoding.Default.GetBytes(txt);
//开始加密
byte[] newBuffer = mi.ComputeHash(buffer);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < newBuffer.Length; i++)
{
sb.Append(newBuffer[i].ToString("x2"));
}
textBox4.Text = sb.ToString();
}
}
}
2、文件流加密实现
/// <summary>
/// 根据流数据获取md5
/// </summary>
/// <param name="stream"></param>
/// <returns></returns>
private string getMd5byStream(Stream stream)
{
using (MD5 mi = MD5.Create())
{
//开始加密
byte[] newBuffer = mi.ComputeHash(stream);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < newBuffer.Length; i++)
{
sb.Append(newBuffer[i].ToString("x2"));
}
return sb.ToString();
}
}
最终的实现效果:
原创文章,转载请注明出处:
https://jerrycoding.com/article/csharp-autoupdate3
微信
支付宝