using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Apewer.Run { class HashComputer { public HashComputer() { var path = @"Y:\telecast\新白娘子传奇"; var subs = StorageUtility.GetSubFiles(path, true); subs.Sort(); var array = Json.NewArray(); foreach (var sub in subs) { var md5 = ""; using (var file = StorageUtility.OpenFile(sub)) { var info = new FileInfo(sub); var length = info.Length; md5 = BinaryUtility.MD5(file, (p) => { Console.WriteLine($"{sub} total={length} progress={p}"); }).ToX2(); } Console.WriteLine($"{sub} md5={md5}"); var item = Json.NewObject(); item["path"] = sub; item["md5"] = md5; array.AddItem(item); } StorageUtility.WriteFile(path + ".json", array.ToString(true).ToBinary()); } } }