private static SiteInfoExtractorParam ParseDic(Dictionary <string, List <string> > dic) { SiteInfoExtractorParam SiteInfoExtractorParam = new SiteInfoExtractorParam(); foreach (var item in dic) { var type = Gdp.Utils.EnumUtil.TryParse <SiteInfoExtractorParamType>(item.Key); var listVal = item.Value; switch (type) { case SiteInfoExtractorParamType._: break; case SiteInfoExtractorParamType.E: break; case SiteInfoExtractorParamType.OutputDirectory: SiteInfoExtractorParam.OutputDirectory = (listVal[0]); break; case SiteInfoExtractorParamType.InputPath: SiteInfoExtractorParam.InputPath = (listVal); break; default: log.Warn(type + " Not implemented "); break; } } return(SiteInfoExtractorParam); }
private static void ExtractSiteInfo(string[] args) { var param = SiteInfoExtractorParam.ParseArgs(args); var outDir = param.OutputDirectory; List <string> inputPathes = new List <string>(); foreach (var inputPath in param.InputPath) { if (FileUtil.IsDirectory(inputPath)) { if (!Directory.Exists(inputPath)) { continue; } var list = new List <string>(); var files = Directory.GetFiles(inputPath, "*.rnx|*.RNX|*.??o|*.??O"); var subDir = PathUtil.GetSubDirectory(inputPath); var dir = Path.Combine(outDir, subDir); FileUtil.CheckOrCreateDirectory(dir); inputPathes.AddRange(files); } else { inputPathes.Add(inputPath); } } SiteInfoExtractor extractor = new SiteInfoExtractor() { OutputDirectory = param.OutputDirectory }; extractor.Run(inputPathes.ToArray()); }