打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Unity游戏开发技术杂谈(一):为文件生成MD5值
如果要做游戏的热更新(其实不光是Unity,其他游戏也需要),就需要此项功能。
服务器资源列表更新后,客户端联网后需要检验服务器端的资源情况。如果文件名相同但MD5值发生了改变,表明该文件被更新,将其加入待更新的列表。如果有不同的文件名,表明是新的资源,像新的地图什么的,也需要加入列表的。检查完毕后从服务器下载资源,然后替换本地文件或者加入新的文件。当然,我这里也许说的很不全面,希望大侠们帮我纠正,小弟感激不尽!
本章简单写了一下文件的MD5值生成方法。欢迎交流!
[csharp] view plaincopy
using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace GetMD5
{
class Program
{
public static string getFileHash(string filePath)
{
try
{
FileStream fs = new FileStream(filePath, FileMode.Open);
int len = (int)fs.Length;
byte[] data = new byte[len];
fs.Read(data, 0, len);
fs.Close();
MD5 md5 = new MD5CryptoServiceProvider();
byte[] result = md5.ComputeHash(data);
string fileMD5 = "";
foreach (byte b in result)
{
fileMD5 += Convert.ToString(b, 16);
}
return fileMD5;
}
catch (FileNotFoundException e)
{
Console.WriteLine(e.Message);
return "";
}
}
static void Main(string[] args)
{
string md5 = getFileHash("E:\\Myweb\\cubetest.unity3d");
string b = getFileHash("E:\\Myweb\\testscene.unity3d");
Console.WriteLine(md5);
Console.WriteLine(b);
Console.ReadKey();
}
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
计算文件的MD5值(比较两个文件是否一样)
MD5加密函数
编程语言C#字符串处理小工具的详细介绍
创建文件或文件夹(C# 编程指南)
【新提醒】Unity 游戏资源更新
md5生成文件校验码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服