- 51Aspx源码必读.txt[1KB]
- FileValidate_Sln.sln[1KB]
- from.jpg[11KB]
- LICENSE[34KB]
- 最新Asp.Net源码下载.url[123B]
源码介绍
一、源码描述
快速MD5文件验证方法
环境:VS2022 md5
二、功能介绍
在.Net中,寻找比较2个字节数组是否相同的最快方法(尤其是超大文件)!
比较方式:
1、文件大小不一样,直接返回 False
2、MD5校验
3、字节数组每一个字节校验
4、ReadOnlySpan 校验 注:.net core 3.0
4、DllImport C库函数 memcmp 校验
使用说明
FileValidate fileValidate = new FileValidate(srcFile, tgtFile, valiteType: 4);
fileValidate.IsSame()
结论
memcmp ≈ ReadOnlySpan > ByteCompare > MD5Compare
MD5检验效率最低,无可厚非,源于又要哈希成byte字节数组,最后又要转成字符串。
Byte数组的每个字节去比较,很普通,没用什么算法的比较。
ReadOnlySpan .net core 3.0 中提供的内存安全高效访问的BCL,大量API的性能提升使用该结构体。
memcmp C函数库方法,很多文章都介绍到该库函数的卓越的执行效率。
随着测试次数的增加,竟然发现 ReadOnlySpan 并不比 memcmp 差多少,甚至已经超越 !
微软大法,不错哈!C#是世界上最好的语言!哈哈哈!
我挑了两个文件比较,一个6M一个1.6G,结果都是差不多的。
三、注意事项
ctrl+F5运行即可。
下载记录(Only Recent 100)
用户名 | 推荐指数 | 下载时间 |
---|