首页 / .NET / 正文

# [.NET].NET/C#应用程序开发中比较两个字节数组(byte[])是否相同的方法有哪些呢?

5371 发布于: 2018-03-30 读完约需1分钟

问题描述

在.NET/C#的应用程序开发中,有需求需要比较两个字节数组(byte[])是否相同,现在使用比如笨的方法实现了一种方式,如下:

那么,在.NET/C#应用程序开发中,比较两个字节数组(byte[])是否相同的方法有还哪些呢?哪些方式更高效呢?

方案一

使用.NET中的Enumerable.SequenceEqual()方法,如下:

方案二

使用msvcrt.dll,如下:

方案三

在.NET 4 以及更高版本中,内置了IStructuralEquatable接口及实现,如下:

特别注意:经测试,此方式的性能可能不高,请慎用!!!

方案四

使用unsafe的代码来实现,如下:

方案五

另一种高效的unsafe的实现方式,如下:

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

上一篇: [C#].NET/C#应用程序开发中使用Directory.GetFiles()过滤多种文件扩展名类型有哪些方法?

下一篇: [.NET].NET/C#应用程序开发中复制/拷贝整个文件夹中的所有内容(文件&文件夹)的方法有哪些?

本文永久链接码友网 » # [.NET].NET/C#应用程序开发中比较两个字节数组(byte[])是否相同的方法有哪些呢?

分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册