sé la forma habitual de conseguir el tamaño de un archivo sería utilizar una instancia de FileInfo:¿Hay alguna manera de obtener el tamaño de un archivo en .NET usando un método estático?
using System.IO;
class SizeGetter
{
public static long GetFileSize(string filename)
{
FileInfo fi = new FileInfo(filename);
return fi.Length;
}
}
¿Hay una manera de hacer lo mismo sin tener que crear una instancia de FileInfo, utilizando un estático ¿método?
Tal vez estoy tratando de ser demasiado tacaño con la creación de una nueva instancia cada vez que quiero un tamaño de archivo, pero por ejemplo, tratando de calcular el tamaño total de un directorio que contiene más de 5000 archivos. ¿Tan optimizado como el GC puede ser, no debería haber una manera de hacer esto sin tener que gravarlo innecesariamente?
¿Seguro que esto es cuello de botella de su aplicación? Supongo que no, entonces, ¿para qué molestarse? – Andrey
@Andrey No es tanto un cuello de botella como una cuestión de uso eficiente del lenguaje y del recolector de basura. Tales cosas siempre valen la pena cuestionarlas, especialmente si no está familiarizado con los matices del GC. No sería la primera vez que me acusan de optimizar demasiado, pero prefiero equivocarme por estar demasiado preocupado por esas cosas en lugar de no molestarme. Además, no toma más que unos pocos minutos para hacer una pregunta. – Will