• Domingo 19 de Mayo de 2024, 03:26

Autor Tema:  renombar archivos  (Leído 3563 veces)

flara

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
renombar archivos
« en: Jueves 3 de Septiembre de 2009, 17:11 »
0
Hola y antes de nada daros las gracias por el foro, se que de este tema se ha ablado mucho en varios lenguajes de programacion, pero la verdad que yo de programacion no tengo ni idea, y mire que lo intente hacer. Lo que quiero realizar es un pequeño programa para renombrar *.txt, tengo un programa que me guarda los logs de la siguiente manera punchlog_02.abr.2009.txt, el problema es para luego cargarlos y sacar los reportes, son todos lo puntos que escribe, entonces me gustaria poder renombrar y que el fichero quedar aalgo asi: 02abr2009.txt, que tan solo que el punto de la extensión del archivo ya probe a renombrarlos, pero como no tengo mucha idea no se como realizarlo, el problema esque por cada dia me crea un log diferente, es decir; punchlog_02.abr.2009.txt, punchlog_03.abr.2009.txt, etc, entonces lo que tengo que hacer es programar la tarea y que de forma automatica revise el directorio donde estas esos *.txt y cuando detecte que haya alguno con el nombre punchlog_02.abr.2009.txt lo renombre a 02abr2009.txt.

el programa deberia hacer algo asi
ejemplo c:/logs  --> aqui estan los archivos *.txt
contenido de la carpeta                                       Renombrados
punchlog_02.abr.2009.txt ----------------------      02abr2009.txt
punchlog_03.abr.2009.txt ----------------------      03abr2009.txt
punchlog_04.abr.2009.txt ----------------------      04abr2009.txt  
punchlog_05.abr.2009.txt ----------------------      05abr2009.txt
punchlog_06.abr.2009.txt ----------------------      06abr2009.txt  
punchlog_07.abr.2009.txt ----------------------      07abr2009.txt  
punchlog_08.abr.2009.txt ----------------------      08abr2009.txt  
mas los que valla generando cada dia---------      mas los que vallan generando cada dia.

Un saludo y gracias de ante mano.

tannke

  • Miembro MUY activo
  • ***
  • Mensajes: 152
  • Nacionalidad: es
    • Ver Perfil
Re: renombar archivos
« Respuesta #1 en: Lunes 7 de Septiembre de 2009, 16:34 »
0
esto podria ser una manera de hacerlo:

Código: C#
  1. string direccio = @"C:Aquiladirecciondelosarchivos";
  2.  
  3.             string[] dir = Directory.GetFiles(direccio);
  4.  
  5.             for (int i = 0; i < dir.Length; i++)
  6.             {
  7.                 dir[i] = dir[i].Replace(direccio, "");
  8.                 Console.WriteLine(dir[i]);
  9.  
  10.                 if (dir[i].Length > 13)
  11.                 {
  12.                     string temp = dir[i];
  13.                     temp = temp.Replace("punchlog_", "");
  14.                     temp = temp.Replace(".", "");
  15.                     temp = temp.Replace("txt", "");
  16.  
  17.  
  18.                    
  19.                     File.Move(direccio + dir[i], direccio + temp + ".txt");
  20.                 }
  21.             }
  22.  

flara

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: renombar archivos
« Respuesta #2 en: Lunes 7 de Septiembre de 2009, 17:24 »
0
Gracias, meto el codigo y cuando de doy a depurar enpiezan a salirme errores, lo estoy aciendo como una solucion de apliacionde windows, algunos de los errores que me da son los siguientes:

Un espacio de nombres no contiene directamente miembros como campos o métodos (CS0116) - C:aRenamerRenamerfrmErrorLog.cs:10

tannke

  • Miembro MUY activo
  • ***
  • Mensajes: 152
  • Nacionalidad: es
    • Ver Perfil
Re: renombar archivos
« Respuesta #3 en: Lunes 7 de Septiembre de 2009, 20:33 »
0
no se si sera esto, puede que si. Has puesto arriba en los using el espacio de nombres IO?:

using System.IO;

otro posible error es que si estas trabajando en aplicacion windows debes eliminar la linea:

 Console.WriteLine(dir);   esta linea es para aplicacion de consola

flara

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: renombar archivos
« Respuesta #4 en: Martes 8 de Septiembre de 2009, 13:40 »
0
ahora empece de cero y me da error de sintaxis en todas las lineas
« última modificación: Martes 8 de Septiembre de 2009, 16:38 por flara »

flara

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: renombar archivos
« Respuesta #5 en: Martes 8 de Septiembre de 2009, 14:51 »
0
la linea Console.WriteLine(dir); me di cuenta cuando vi el codigo y la elimine y el System.IO no tiene espacios, aora me esta dando varios errores la mayoria son: Se esperaba una clase, un delegado, una enumeración, una interfaz o una estructura (CS1518) - D:SharpDevelop ProjectsforoforoMainForm.cs:36,13

tannke

  • Miembro MUY activo
  • ***
  • Mensajes: 152
  • Nacionalidad: es
    • Ver Perfil
Re: renombar archivos
« Respuesta #6 en: Martes 8 de Septiembre de 2009, 15:05 »
0
Mmmm... pues no se donde puede estar el fallo, a mi me funciona a la perfección. Siempre y cuando los archivos a renombrar siempre sean del tipo punchlog_02.abr.2009.txt donde solo cambien dia mes y año.

Puedes hacer un depurado paso a paso por instrucciones y decirme en que linea te salta el error? alomejor de ahi podemos sacar el fallo y solucionarlo.

Saludos

gerardoskype

  • Miembro activo
  • **
  • Mensajes: 50
  • Nacionalidad: mx
    • Ver Perfil
Re: renombar archivos
« Respuesta #7 en: Martes 27 de Octubre de 2009, 22:47 »
0
Veo la problematica y si no me equivoco, lo que tu quires es que, ¿ Cuando generes el archivo se guarde con la fecha actual, y asi todos los dias?

ahora, veo que la solucion que tienes es en consola, pero yo tenia ese mismo problema con forms.

loque hice fue, poner una variable con la fecha del dia, y cuando guardaba los datos, se generaba el archivo con la fecha del dia.

solo que yo lo he manejado con RichTextBox y DatagrindView.

Comenta.