public List <AnalysisObject> makeList(DirectoryInfo di, string searchPattern) { foreach (FileInfo f in di.GetFiles(searchPattern)) { if (f.ToString()[0] != '~') { ListofFiles.Add(new AnalysisObject { FileName = f.ToString() }); } } return(ListofFiles); }
static public string GetSelectedData(string formtext) // перегруженный метод для string выбор файла { SelectDataForm SWForm = new SelectDataForm { Text = formtext }; // создаем форму с выбором SWForm.label1.Text = formtext; SWForm.ListData.Items.Clear(); foreach (string fn in ListofFiles) // заполняем перечнем файлов { SWForm.ListData.Items.Add(fn); } ListofFiles.Clear(); ListofFiles.AddRange(Directory.GetFiles(DirPath)); SWForm.ListData.Text = SWForm.ListData.Items[0].ToString(); // выставляем первый файл по умолчанию SWForm.ShowDialog(); return(ListofFiles[SWForm.ListData.SelectedIndex]); // выбор активного файла }
private void OpenDir_Button_Click(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.Cancel) { return; } // получаем выбранный файл DirPath = folderBrowserDialog1.SelectedPath; ListofFiles.Clear(); ListofFiles.AddRange(Directory.GetFiles(DirPath).Select(Path.GetFileName)); // в список для выбора кладем названия файлов FilePath = GetSelectedData("Выбор базового файла"); FileInfo XLSXFile = new FileInfo(FilePath); // создаем обертку для доступа к файлу ExPack = new ExcelPackage(XLSXFile); // подключаем Excel ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial; // некоммерческая лицензия WSheet = GetSelectedData("Выбор базового листа", "Выберите лист для поиска шапки таблицы"); HatRange = GetHatRange(WSheet); // ищем диапазон шапки // создаем новый документ с шапкой // открываем последовательно файлы и // ищем в каждой таблицу // копируем таблицу // сохраняем новый документ ExPack.Dispose(); // очищаем память }