Renombrar archivos con C#

Que tal, en esta ocasión vamos a aprender como cambiarle el nombre a los archivos mediante una aplicación de consola usando c#

Para este ejemplo supongamosque tenemos una carpeta con imágenes que al principio tienen un «_» y lo que buscamos es quitar ese carácter inicial.

Creemos un nuevo proyecto de tipo aplicación de consola.

Ya estando en el proyecto lo primero que debemos hacer es obtener la ubicación donde se va a ejecutar nuestra aplicación, lo anterior para no colocarla directamente en el código.

String ruta = System.Reflection.Assembly.GetExecutingAssembly().Location;

Esta linea nos devolverá algo como esto: c:/carpeta/aplicacion.exe

Quitemos el nombre de la aplicación para solo dejar la ruta absoluta de la carpeta.

 ruta= ruta.Replace("aplicacion.exe", "");

Asignamos la ruta a un directorio para poder trabajar en el

DirectoryInfo di = new DirectoryInfo(@ruta);

Aquí viene lo bueno, vamos a recorrer todos los archivos de ese directorio y vamos a renombrar cualquier documento que empieza con «_».

foreach (var fi in di.GetFiles())
            {
                try
                {
                    //obtenemos el nombre del archivo
                    string archivo = fi.Name.ToString();

                     


                    if (archivo.Substring(0,1)=="_")
                    {
                          //si ya existe un archivo con ese nombre lo eliminamos, si no, marcará una excepción en el scritp. archivo.Substring(1) es el nombre del archivo sin "_"

                         if (File.Exists(ruta + archivo.Substring(1)))
                               File.Delete(ruta + archivo.Substring(1));

                        File.Move(ruta+archivo, ruta + archivo.Substring(1));
                        Console.WriteLine("Renombrando : " + archivo);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine("Error al renombrar archivo: {0}", e.ToString());
                }
            }
              Console.WriteLine("Listo!!!");
            Console.ReadKey();

Ejecuten la aplicación y después muevan el ejecutable resultante a la carpeta donde están los archivos que deseen modificar.

Ahora solo resta correrlo dentro de la carpeta.

Y con eso hará el cambio de nombre de los archivos. Este pequeño script me fue útil cuando tenia que renombrar 180 000 archivos que por alguna razón habían agregado un «_» antes de sus nombres.

Related Posts Plugin for WordPress, Blogger...

publicidad

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *