private static void ReadDats(uint ParentId, string datRoot, string subPath) { DirectoryInfo di = new DirectoryInfo(Path.Combine(datRoot, subPath)); DirectoryInfo[] dis = di.GetDirectories(); foreach (DirectoryInfo d in dis) { uint DirId = FindOrInsert.FindOrInsertIntoDir(ParentId, d.Name, Path.Combine(subPath, d.Name) + "\\"); ReadDats(DirId, datRoot, Path.Combine(subPath, d.Name)); if (_bgw.CancellationPending) return; } FileInfo[] fis = di.GetFiles("*.DAT"); ReadDat(fis, subPath, ParentId); fis = di.GetFiles("*.XML"); ReadDat(fis, subPath, ParentId); }
private static void DatCount(string datRoot, string subPath) { DirectoryInfo di = new DirectoryInfo(Path.Combine(datRoot, subPath)); DirectoryInfo[] dis = di.GetDirectories(); foreach (DirectoryInfo d in dis) DatCount(datRoot, Path.Combine(subPath, d.Name)); FileInfo[] fis = di.GetFiles("*.DAT"); _datCount += fis.Length; fis = di.GetFiles("*.XML"); _datCount += fis.Length; }