Página 1 de 1

Último archivo creado desde C#

NotaPublicado: 2011-04-18 09:53 @454
por scout
Os consulto al que esté en el tema...


Utilizando C# y teniendo una carpeta con imágenes la idea es conocer el último archivo .jpg que se creó…

Al momento logré enumerarlos por su nombre y fecha de creación, pero no encuentro la forma de buscar el último que se creó. En Perl ya lo tengo armando pero me interesa hacer lo mismo en C#.

¿Alguno conoce una manera de poner en una variable el nombre del último archivo creado...?

Sintáxis: [ Descargar ] [ Ocultar ]
  1. foreach (string d in Directory.GetFiles(directorio, "*.jpg")) 
  2.         FileInfo FileProps = new FileInfo(d); 
  3.         Console.Write("el ultimo archivo es {0} ", FileProps.FullName); 
  4.         Console.Write("fecha de creacion {0}\n", FileProps.CreationTime); 
  5.  


Desde ya, se agradece...

Re: Último archivo creado desde C#

NotaPublicado: 2011-04-24 13:46 @615
por scout
La solución de Perl es más simple...

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
while
    next if $fichero !~ m/\.jpg$/;
    my $archivo = $dir . $fichero;
    push @archivos, [ ((stat($archivo))[9]), $fichero ];
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


y luego se ordenan, luego un foreach() y un print() con el primer elemento del array que es el más nuevo...

Re: Último archivo creado desde C#

NotaPublicado: 2011-04-24 15:57 @706
por explorer
Dices que en Perl es más simple. ¿Cómo es en C#?

Realmente, se puede hacer en una línea de Perl:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. perl -E 'say ((sort { $a->[0] <=> $b->[0] } map { [ -M, $_] } <*.jpg>)[0][1])'
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4

pero... no es recomendable... (queda un poco oscuro).

Bueno, hay otras formas de hacerlo, desde luego.