Arquivo da tag: Massa

Dicas – Renomeando arquivos em massa no C#

Por essas e outras é muito bacana ser um programador! 😀

Mas primeiro, um pouco de história. Precisando renomear um série de arquivos em uma pasta do computador, vamos lá buscar na internet quais são as opções que existem para fazê-lo. Nada além do que o Windows é capaz. O mesmo permite que você renomeie em massa, selecionando vários arquivos, eles terão o mesmo nome com extenções diferentes, ou indexados se tiverem a mesma. No caso, o que queria era remover uma determinada string de vários arquivos, ou substituir por outra.

O resultado? Um programa em C# feito em modo Console que foi capaz de executar a proeza. Levou um tempo para refiná-lo, mas ficou bacana:

using System;
using System.IO;
 
public class RenomeiaArquivos
{
	public static void Main(string[] args)
	{
		// coleta os parâmetros, se houver
		if (args.Length <= 0) {
			// encerra
			Console.WriteLine("Sem parâmetros?!?!?");
			return;
		}
		// 0 é a pasta
		string folder = args[0];
		// valida
		if (!Directory.Exists(folder)) {
			Console.WriteLine("Diretório inexistente");
			return;
		}
		// 1 é a string de procura
		string find = args[1];
		// valida
		if (string.IsNullOrEmpty(find)) {
			Console.WriteLine("A string de procura não pode ser vazia");
			return;
		}
		// 2 é a string de substituição
		string replace = args[2];
 
		foreach(string file in Directory.GetFiles(folder)) {
			Console.WriteLine(string.Format("Renomeando arquivo {0}",  new object[] { file }));
			try {
				File.Move(file, file.Replace(find, replace));
				Console.WriteLine("OK");
			}
			catch {
				Console.WriteLine("Ops! Não foi possível renomear este arquivo!");
			}
		}
	}
}

A chamada é simples, mas precisa ser feita em modo Console:

  • Abra o Prompt de comando
  • Aponte para a pasta em que está o executável (mais abaixo para download)
  • Digite RenomeiaArquivo “[PASTA]” “[PROCURA]” “[SUBSTITUI]”
  • Onde:
    • [PASTA] = É a pasta onde estão seus arquivos a serem renomeados
    • [PROCURA] = O texto procurado no nome do arquivo que será substituído
    • [SUBSTITUI] = O texto que será colocado no texto de procura

Voilá! Seus arquivos serão renomeados em massa! Rápido, simples, eficaz!

Fica a promessa de uma versão mais amigável ao usuário final com uma tela e tudo mais. Vão os arquivos desta versão logo abaixo:

Bom proveito!