private static void ForwardsToDestination(FileInfo document, TypeDocuments kind, string destinationPath, string directoryBackup) { switch (kind) { case TypeDocuments.Video: SaveDocument(document, destinationPath, directoryBackup, "Videos"); break; case TypeDocuments.Music: SaveDocument(document, destinationPath, directoryBackup, "Musicas"); break; case TypeDocuments.Text: string content; content = ReplaceEspecificContent(document); File.Delete(document.FullName); SaveDocument(document, destinationPath, directoryBackup, "Textos", content); break; case TypeDocuments.Image: SaveDocument(document, destinationPath, directoryBackup, "Imagens"); break; case TypeDocuments.Any: SaveDocument(document, destinationPath, directoryBackup, "Outros"); break; default: break; } }
static void Main(string[] args) { List <FileInfo> documents = new List <FileInfo>(); Console.WriteLine("Bem vindo ao Organizador de Arquivos. "); Console.WriteLine("\nInforme o diretório de origem dos arquivos:"); string sourcePath = Console.ReadLine(); Console.WriteLine("\nInforme o diretório de destino dos arquivos, serão criados subdiretórios conforme seu tipo (Videos, Musicas, Textos, Imagens e Outros):"); string destinationPath = Console.ReadLine(); Console.WriteLine("\nInforme o diretório de backup dos arquivos: "); string directoryBackup = Console.ReadLine(); Console.WriteLine("\nInforme o diretório onde será salvo o relatório dos arquivos ordenados:"); string destinationReport = Console.ReadLine(); try { documents = FileHelper.LoadDocuments(sourcePath); foreach (var document in documents) { TypeDocuments kind = VerifyTypeDocument(document); ForwardsToDestination(document, kind, destinationPath, directoryBackup); } ReportGenerator(destinationPath, destinationReport); Console.WriteLine("Arquivos ordenados e relatório gerado. Flw Vlw xDDDD"); Console.ReadLine(); } catch (Exception) { throw; } }