Obtener los atributos de un fichero o directorio

2111 vistas

Vamos a usar el método GetAttributes de la clase System.IO.File



csharp
  1. using System.IO;
  2.  
  3. static void GetFileAttributes(string sFilename)
  4. {
  5.  
  6.     FileAttributes flagAttr = File.GetAttributes(sFilename);
  7.  
  8.     // fecha de creación
  9.     Console.WriteLine("Creado el {0} a las {1}",
  10.                       File.GetCreationTime(sFilename).ToShortDateString(),
  11.                       File.GetCreationTime(sFilename).ToShortTimeString());
  12.  
  13.     // fecha de la última modificación
  14.     Console.WriteLine("Modificado el {0} a las {1}",
  15.                       File.GetLastWriteTime(sFilename).ToShortDateString(),
  16.                       File.GetLastWriteTime(sFilename).ToShortTimeString());
  17.  
  18.     // fecha del último acceso
  19.     Console.WriteLine("Último acceso el {0} a las {1}",
  20.                       File.GetLastAccessTime(sFilename).ToShortDateString(),
  21.                       File.GetLastAccessTime(sFilename).ToShortTimeString());
  22.  
  23.     Console.WriteLine("Atributos de {0}", sFilename);
  24.  
  25.     // Attribut Archive
  26.     if ((flagAttr & FileAttributes.Archive) == FileAttributes.Archive)
  27.         Console.WriteLine(FileAttributes.Archive.ToString());
  28.  
  29.     // Atributo Comprimido
  30.     if ((flagAttr & FileAttributes.Compressed) == FileAttributes.Compressed)
  31.         Console.WriteLine(FileAttributes.Compressed.ToString());
  32.  
  33.     // Atributo Device
  34.     if ((flagAttr & FileAttributes.Device) == FileAttributes.Device)
  35.         Console.WriteLine(FileAttributes.Device.ToString());
  36.  
  37.     if ((flagAttr & FileAttributes.Directory) == FileAttributes.Directory)
  38.         Console.WriteLine(FileAttributes.Directory.ToString());
  39.  
  40.     if ((flagAttr & FileAttributes.Encrypted) == FileAttributes.Encrypted )
  41.         Console.WriteLine(FileAttributes.Encrypted.ToString());
  42.  
  43.     // Atributo oculto
  44.     if ((flagAttr & FileAttributes.Hidden) == FileAttributes.Hidden)
  45.         Console.WriteLine(FileAttributes.Hidden.ToString());
  46.  
  47.     // Atributo Normal
  48.     if ((flagAttr & FileAttributes.Normal) == FileAttributes.Normal)
  49.         Console.WriteLine(FileAttributes.Normal.ToString());
  50.  
  51.     // Atributo no indexado
  52.     if ((flagAttr & FileAttributes.NotContentIndexed) == FileAttributes.NotContentIndexed)
  53.         Console.WriteLine(FileAttributes.NotContentIndexed.ToString());
  54.  
  55.     // Atributo Offline
  56.     if ((flagAttr & FileAttributes.Offline) == FileAttributes.Offline)
  57.         Console.WriteLine(FileAttributes.Offline.ToString());
  58.  
  59.     // Atributo ReadOnly
  60.     if ((flagAttr & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
  61.         Console.WriteLine(FileAttributes.ReadOnly.ToString());
  62.  
  63.     // Atributo ReparsePoint
  64.     if ((flagAttr & FileAttributes.ReparsePoint) == FileAttributes.ReparsePoint)
  65.         Console.WriteLine(FileAttributes.ReparsePoint.ToString());
  66.  
  67.     // Atributo SparseFile
  68.     if ((flagAttr & FileAttributes.SparseFile) == FileAttributes.SparseFile)
  69.         Console.WriteLine(FileAttributes.SparseFile.ToString());
  70.  
  71.     // Atributo System
  72.     if ((flagAttr & FileAttributes.System) == FileAttributes.System)
  73.         Console.WriteLine(FileAttributes.System.ToString());
  74.  
  75.     // Atributo Temporary
  76.     if ((flagAttr & FileAttributes.Temporary) == FileAttributes.Temporary)
  77.         Console.WriteLine(FileAttributes.Temporary.ToString());
  78. }