using System.Collections; using System.Collections.Generic; using System; using System.IO; using System.Security.Cryptography; public class AssetsVersionMaker { public static void WriteAssetsVersionFile(string _path, List _fileInfos) { var relativePath = string.Empty; var extersion = string.Empty; var fileSize = 0L; var md5 = string.Empty; var lines = new List(); for (int i = 0; i < _fileInfos.Count; i++) { var fileInfo = _fileInfos[i]; if (fileInfo.Name == "AssetsVersion.txt") { continue; } if (fileInfo.FullName.Contains("DS_Store") || fileInfo.FullName.Contains("ds_store")) { continue; } relativePath = FileExtersion.GetFileRelativePath(_path, fileInfo.FullName); extersion = fileInfo.Extension; fileSize = fileInfo.Length; md5 = FileExtersion.GetMD5HashFromFile(fileInfo.FullName); lines.Add(StringUtility.Contact(relativePath, "\t", extersion, "\t", fileSize, "\t", md5)); } var assetVersionFile = StringUtility.Contact(_path, Path.DirectorySeparatorChar, "AssetsVersion.txt"); if (File.Exists(assetVersionFile)) { File.Delete(assetVersionFile); } File.WriteAllText(StringUtility.Contact(_path, Path.DirectorySeparatorChar, "AssetsVersion.txt"), string.Join(FileExtersion.lineSplit, lines.ToArray())); } }