今天我们来写写工具类,这个类有什么用呢?

也就是无论你做什么项目,这个工具类你都可以拿来用,之所以通用,是可以适用所有项目。

这节我主要讲如何生成文件的MD5码。

那么这个MD5是个什么鬼东西,读者可以自行百度,其实简略的讲就是验证文件是否被篡改。

什么意思,比如当你去网站下载游戏的客户端软件,当有些黑客喜欢搞出点不好的事情,在你的客户端加些恶意代码之类的。

当黑客改了客户端文件,随之这个文件的MD5也改变了。所以我们只要验证用户下载的客户端的MD5和网站提供的MD5码是否一致,来判断是否要下载。

所以这个MD5是非常有用的,c#也自带MD5库。

public static String BuildFileMd5(String filename){String filemd5 = null;try{using (var fileStream = File.OpenRead(filename)){var md5 = MD5.Create();var fileMD5Bytes = md5.ComputeHash(fileStream);//计算指定Stream 对象的哈希值                                      filemd5 = FormatMD5(fileMD5Bytes);}}catch (System.Exception ex){LoggerHelper.Except(ex);}return filemd5;}

        public static string FormatMD5(Byte[] data){return System.BitConverter.ToString(data).Replace("-", "").ToLower();//将byte[]装换成字符串}

将这段代码写到Utils类中,以后如果要用到计算MD5码的,直接Utils.BuildFileMd5(path),就可以取到这个文件的md5。

是不是很简单,ok,之后我会持续更新一些使用的通用工具方法。

转载于:https://www.cnblogs.com/CaomaoUnity3d/p/4782858.html

Unity3d通用工具类之生成文件的MD5相关推荐

  1. Java生成文件的md5文件方法的代码

    package pri.liyang.util; import java.io.*; import java.security.MessageDigest; import java.security. ...

  2. Util: Java生成文件的md5文件方法的代码

    package pri.liyang.util;import java.io.*; import java.security.MessageDigest; import java.security.N ...

  3. Unity3d通用工具类之定时触发器

    时隔多日,好不容易挤出点时间来写写博文.不容易,请送我几朵红花,点个赞也行. 今天呢,我们主要来扩展下通用工具类==>定时触发器. 顾名思义,所谓的定时触发器,就是告诉程序在过多长时间后,我要执 ...

  4. 生成文件md5校验码可满足大于2G情况

    对于文件生成md5校验码,在实际开发中用处很大,有利于比较服务器上是否已经存在该文件,哪怕文件名不一致也无所谓. 由于存在超大文件,经过从网上查找,得到两种方法,一种是利用MappedByteBuff ...

  5. JAVA 获取文件的MD5值大小以及常见的工具类

    1 /** 2 * 获取文件的MD5值大小 3 * 4 * @param file 5 * 文件对象 6 * @return 7 */ 8 public static String getMD5(Fi ...

  6. dao和mysql映射_hibernate通过数据库生成实体类,映射文件和DAO(实用)

    hibernate通过数据库生成实体类,映射文件和DAO(实用) (2011-04-06 17:22:32) 标签: 杂谈 上次谈到利用MyEclipse从数据库反向生成实体类之JPA方式,这次我们来 ...

  7. mybatis根据表逆向自动化生成代码(自动生成实体类、mapper文件、mapper.xml文件)

    若采用mybatis框架,数据库新建表,手动编写的话,需要编写大量的实体类.mapper文件.mapper.xml文件,都是一些重复且有规律的工作. 我们可以引用插件,然后做配置,自动生成这些文件,提 ...

  8. springboot中使用generator自动生成mybatis的接口、实体类和映射文件-springboot学习笔记

    在使用mybatis的时候,我们需要自己建立实体类.接口和对应的映射文件.一个字母写错就可能导致运行不起来,很是麻烦.使用generator可以帮助我们自动生成上述的文件. 首先,新建一个spring ...

  9. 批量生成文件夹内所有文件md5

    批量生成文件夹内所有文件md5 title md5批量生成脚本 setlocal enabledelayedexpansion %~d0 cd %~dp0 if exist 1234.txt del ...

最新文章

  1. SpringBoot 框架中 使用Spring Aop 、创建注解、创建枚举类 使用过程记录
  2. 软件测试需要学习什么技术
  3. 【Java数据库】SQL时间类型Date Time Timestamp区别、插入/取出指定时间段的数据
  4. Flask/Django/Tornado语法对比(持续更新中)
  5. python的power bi转换基础
  6. Java开发需要达到什么样的水平才称得上架构师?
  7. 如何编辑微信文章(微信文章导出word)
  8. svg图标如何修改大小?
  9. request、response
  10. Apache域名跳转----配置rewrite模块
  11. java打印表格_如何在java中使用printf()打印出表格?
  12. php 输出等腰三角形,C语言输出等腰三角形
  13. win10笔记本使用ipad作为扩展屏
  14. mongodb 用命令导入导出数据库,用命令在Robo3T 上查询。
  15. LeetCode刷题框架总结
  16. 【钉钉-场景化能力包】CRM销售系统集成
  17. UBUNTU挂载新的硬盘到文件管理系统中 WRONG FS TYPE, BAD OPTION, BAD SUPERBLOCK ON /DEV/SDB
  18. 皆爱高“淑商”女子——时代新词盘点
  19. mPEG-HSA;甲氧基聚乙二醇人血清白蛋白;HSA-PEG简介
  20. Android系统铃声音乐文件夹

热门文章

  1. mysql 5.5.39 安装_CentOS7.2安装mysql5.5.39
  2. Java入门算法(贪心篇)丨蓄力计划
  3. python numpy np.array_Python | numpy | np.split()与np.array_split()函数
  4. @data注解的作用_Java中注解学习系列教程-2
  5. 【测评】想买投影仪,预算又不多,该怎么选?——三款高性价比投影仪PK测评
  6. python实现语音播放_用Python实现语音播报
  7. python的实例属性和静态属性表_Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法...
  8. android ztree,ztree实现权限功能(横向显示)
  9. 税收java_String 类中的 isEmpty() 是判断字符串是否为空的,如果为空返回 true ,不为空返回 false 。 (1.0分)_学小易找答案...
  10. sql程序调用批处理_批处理学习之常用命令