static public void showFileContentMd5() { UnityEngine.Object obj = Selection.objects [0]; string path = AssetDatabase.GetAssetPath(obj);//Selection表示你鼠标选择激活的对象 Debug.Log(path); Debug.Log("md5==[" + Utl.MD5Encrypt(File.ReadAllBytes(path)) + "]"); }
public string getUpgradePackageMd5(string name) { string p = getUpgradePackagePath(name); p = PStr.b().a(p).a("/").a(CLPathCfg.self.basePath).a("/resVer/").a(CLPathCfg.self.platform).e(); if (Directory.Exists(p)) { string[] files = Directory.GetFiles(p); string fileName = ""; for (int i = 0; i < files.Length; i++) { fileName = Path.GetFileName(files [i]); if (fileName.StartsWith("VerCtl.ver")) { return(Utl.MD5Encrypt(File.ReadAllBytes(files [i]))); } } } return(""); }
static void doCreate(string path, Hashtable lastOtherVer, Hashtable lastPriorityVer, Hashtable lastCfgdataVer, ref Hashtable outMap) { string[] fileEntries = Directory.GetFiles(path); string extension = ""; string filePath = ""; string md5Str = ""; foreach (string fileName in fileEntries) { extension = Path.GetExtension(fileName); if (ECLEditorUtl.isIgnoreFile(fileName)) { continue; } filePath = filter(fileName); filePath = filePath.Replace("\\", "/"); filePath = filePath.Replace("/upgradeRes4Publish/", "/upgradeRes/"); if (ECLProjectManager.isModified(fileName)) { md5Str = Utl.MD5Encrypt(File.ReadAllBytes(fileName)); } else { md5Str = MapEx.getString(lastOtherVer, filePath); if (string.IsNullOrEmpty(md5Str)) { md5Str = MapEx.getString(lastPriorityVer, filePath); } else if (string.IsNullOrEmpty(md5Str)) { md5Str = MapEx.getString(lastCfgdataVer, filePath); } } outMap [filePath] = md5Str; } string[] dirEntries = Directory.GetDirectories(path); foreach (string dir in dirEntries) { //跳过不同平台的资源 #if UNITY_ANDROID if (Path.GetFileName(dir).Equals("IOS") || Path.GetFileName(dir).Equals("Standalone") || Path.GetFileName(dir).Equals("StandaloneOSX")) { continue; } #elif UNITY_IOS if (Path.GetFileName(dir).Equals("Android") || Path.GetFileName(dir).Equals("Standalone") || Path.GetFileName(dir).Equals("StandaloneOSX")) { continue; } #elif UNITY_STANDALONE_WIN if (Path.GetFileName(dir).Equals("Android") || Path.GetFileName(dir).Equals("IOS") || Path.GetFileName(dir).Equals("StandaloneOSX")) { continue; } #elif UNITY_STANDALONE_OSX if (Path.GetFileName(dir).Equals("Android") || Path.GetFileName(dir).Equals("IOS") || Path.GetFileName(dir).Equals("Standalone")) { continue; } #endif doCreate(dir, lastOtherVer, lastPriorityVer, lastCfgdataVer, ref outMap); } }
void initData(string path, int tabs) { //跳过不同平台的资源 #if UNITY_ANDROID if (Path.GetFileName(path).Equals("IOS") || Path.GetFileName(path).Equals("Standalone") || Path.GetFileName(path).Equals("StandaloneOSX")) { return; } #elif UNITY_IOS if (Path.GetFileName(path).Equals("Android") || Path.GetFileName(path).Equals("Standalone") || Path.GetFileName(path).Equals("StandaloneOSX")) { return; } #elif UNITY_STANDALONE_WIN if (Path.GetFileName(path).Equals("Android") || Path.GetFileName(path).Equals("IOS") || Path.GetFileName(path).Equals("StandaloneOSX")) { return; } #elif UNITY_STANDALONE_OSX if (Path.GetFileName(path).Equals("Android") || Path.GetFileName(path).Equals("IOS") || Path.GetFileName(path).Equals("Standalone")) { return; } #elif UNITY_WEBGL if (Path.GetFileName(path).Equals("Android") || Path.GetFileName(path).Equals("IOS") || Path.GetFileName(path).Equals("Standalone") || Path.GetFileName(path).Equals("StandaloneOSX")) { return; } #endif ECLResInfor ri = new ECLResInfor(); path = path.Replace("\\", "/"); ri.path = path; ri.name = Path.GetFileName(path); ri.isDir = true; ri.selected = true; ri.tabs = tabs; ri.relativePath = ri.path.Replace(Application.dataPath + "/", ""); ri.publishPath = Utl.filterPath(ri.relativePath); ri.ver = ""; datas.Add(ri); string[] fileEntries = Directory.GetFiles(path); //因为Application.dataPath得到的是型如 "工程名称/Assets" int count = fileEntries.Length; string fileName = ""; string extension = ""; for (int i = 0; i < count; i++) { fileName = fileEntries [i]; extension = Path.GetExtension(fileName); if (ECLEditorUtl.isIgnoreFile(fileName)) { continue; } totalFiles++; ri = new ECLResInfor(); fileName = fileName.Replace("\\", "/"); ri.path = fileName; ri.name = Path.GetFileName(fileName); ri.isDir = false; ri.selected = true; ri.tabs = tabs + 1; ri.relativePath = ri.path.Replace(Application.dataPath + "/", ""); ri.publishPath = Utl.filterPath(ri.relativePath); ri.ver = Utl.MD5Encrypt(File.ReadAllBytes(fileName)); //MapEx.getString (resLastUpgradeVer, ri.publishPath); datas.Add(ri); selectedDatas.Add(ri); } string[] dirEntries = Directory.GetDirectories(path); count = dirEntries.Length; string dir = ""; for (int i = 0; i < count; i++) { initData(dirEntries [i], tabs + 1); } }