private void CompareFile() { string fileFolder = AssetBundleUtility.GetFileFolder(); if (!Directory.Exists(fileFolder)) { return; } DirectoryInfo directoryInfo = new DirectoryInfo(fileFolder); FileInfo[] fileInfos = directoryInfo.GetFiles("*.*", SearchOption.AllDirectories); foreach (FileInfo paramInfo in fileInfos) { string filePath = paramInfo.FullName.Replace("\\", "/"); if (filePath == AssetBundleUtility.GetFileFolder() + "/" + AssetBundleUtility.fileName) { continue; } string md5 = AssetBundleUtility.GetMd5(filePath); if (newDic.ContainsKey(md5)) { newDic.Remove(md5);//don't need update } else { File.Delete(filePath);//clean old file } } }
void GetFile() { progress = (float)index / lines.Length; if (lines.Length > index) { if (string.IsNullOrEmpty(lines[index])) { index++; GetFile(); } else { string[] keyValue = lines[index].Split('|'); string fileName = keyValue[1].Trim(); string filePath = AssetBundleUtility.fileFolderName + "/" + fileName; fileOutPutPath = AssetBundleUtility.GetFileFolder() + "/" + fileName; IOManager.Instance.ReadFileFromStreamingAssetsPath(filePath, GetFileFinish); } } else { string path = AssetBundleUtility.fileFolderName + "/" + AssetBundleUtility.fileName; IOManager.Instance.WriteFileToPersistentDataPath(path, fileInfoBytes); handler(); } }
public static void Clean() { string path = AssetBundleUtility.GetFileFolder(); if (Directory.Exists(path)) { Directory.Delete(path, true); } Debug.Log("clean finish"); }
private void Finish()//when finish downloading whole files { string filePath = AssetBundleUtility.GetFileFolder() + "/" + AssetBundleUtility.fileName; string directory = Path.GetDirectoryName(filePath); if (!Directory.Exists(directory)) { Directory.CreateDirectory(directory); } File.WriteAllBytes(filePath, fileInfoBytes); AssetBundleMgr.Init(); finishHandler(); Dispose(); }
public void Init(Action param) { handler = param; string filePath = AssetBundleUtility.GetFileFolder() + "/" + AssetBundleUtility.fileName; if (File.Exists(filePath)) { handler(); } else { DeleteFileFolder(); GetFileInfo(); } }
void DeleteFileFolder() { string tempD = AssetBundleUtility.GetFileFolder(); //if (!Directory.Exists(tempD)) // return; //DirectoryInfo tempDInfo = new DirectoryInfo(tempD); //FileInfo[] tempFInfos = tempDInfo.GetFiles("*.*", SearchOption.AllDirectories); //for (int i = 0; i < tempFInfos.Length; i++) // if (File.Exists(tempFInfos[i].Name)) // File.Delete(tempFInfos[i].Name); if (Directory.Exists(tempD)) { Directory.Delete(tempD, true); } }
private void FinishDownloadFile(WWW paramWWW) { string filePath = AssetBundleUtility.GetFileFolder() + "/" + updateList[0]; string directory = Path.GetDirectoryName(filePath); if (!Directory.Exists(directory)) { Directory.CreateDirectory(directory); } File.WriteAllBytes(filePath, paramWWW.bytes); updateList.RemoveAt(0); DownloadFile(); if (updateList != null) { progress = (totalCount - updateList.Count) / totalCount; } }