1、MD5转换
using System.Security.Cryptography;
/// <summary>
/// 计算字符串的MD5值
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string GetMD5(string str)
{
//将得到的明文转化为比特数组
byte[] Buffer = System.Text.Encoding.UTF8.GetBytes(str);
//创建MD5
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
//加密
byte[] cryptog = md5.ComputeHash(Buffer);
//定义字符串
string s = "";
//遍历加密后的比特数组
for (int i = 0; i < cryptog.Length; i++)
{
//将数组中的每位数转换为16进制并变成字符串“x2”是将不够两位的用0填充
s += cryptog[i].ToString("x2");
}
//返回
return s;
}
/// <summary>
/// 计算文件的MD5值
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
static string GetFileMd5(string path)
{
string s = "";
//获取文件并打开
using (FileStream fs = new FileStream(path, FileMode.Open))
{
//创建方法
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
//计算文件的MD5,放在字符数组中
byte[] cryptBytes = md5.ComputeHash(fs);
//遍历全部字节
for (int i = 0; i < cryptBytes.Length; i++)
{
//将所有字节码加到字符串,‘x’表示匹配后字母的大小写,2表示有占位符
s += cryptBytes[i].ToString("x2");
}
}
return s;
}
2、 汉字的转换方法
using Microsoft.International.Converters.PinYinConverter;
/// <summary>
/// 汉字转化成拼音
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
static string GetPinYins(string name)
{
string s = "";
//遍历所有字符串
foreach (char item in name)
{
//判断是否为汉字
if (ChineseChar.IsValidChar(item))
{
//转化为拼音字符
ChineseChar cc = new ChineseChar(item);
//所有的汉字都加到字符串,取匹配好的第一条拼音(多音字),并且将后面的音节数字去掉
s += cc.Pinyins[0].TrimEnd('1', '2', '3', '4', '5') + " ";
}
else
{
//如果包含非汉字,将其正常输出
s += item.ToString();
}
}
return s;
}
如何使用外部类库:
1、找到引用类库的.dll文件,加到项目所在的文件夹。
2、项目中添加引用,添加引用,右键,浏览,上级目录里找到引用的文件夹添加。
3、引用命名空间(查看引用类库的帮助文档)。
4、找自己要用的方法和属性,不要一一查看所有的属性、方法。