Obtener los atributos de un fichero o directorio

2081 vistas

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



vbnet
  1. Imports System.IO
  2.  
  3. Sub GetFileAttributes(ByVal sFilename As String)
  4.  
  5. Dim flagAttr As FileAttributes = File.GetAttributes(sFilename)
  6.    
  7. Console.WriteLine("Creado el {0} a las {1}", _
  8.       File.GetCreationTime(sFilename).ToShortDateString, _
  9.       File.GetCreationTime(sFilename).ToShortTimeString)
  10.    
  11. Console.WriteLine("Modificado el {0} a las {1}", _
  12.       File.GetLastWriteTime(sFilename).ToShortDateString, _
  13.       File.GetLastWriteTime(sFilename).ToShortTimeString)
  14.    
  15. Console.WriteLine("Último acceso el {0} a las {1}", _
  16.       File.GetLastAccessTime(sFilename).ToShortDateString, _
  17.       File.GetLastAccessTime(sFilename).ToShortTimeString)
  18.    
  19. Console.WriteLine("Atributos de {0}", sFilename)
  20.    
  21. If (flagAttr And FileAttributes.Archive) = FileAttributes.Archive Then
  22.     Console.WriteLine(FileAttributes.Archive.ToString)
  23. End If
  24.  
  25. If (flagAttr And FileAttributes.Compressed) = FileAttributes.Compressed Then
  26.     Console.WriteLine(FileAttributes.Compressed.ToString)
  27. End If
  28.  
  29. If (flagAttr And FileAttributes.Device) = FileAttributes.Device Then
  30.     Console.WriteLine(FileAttributes.Device.ToString)
  31. End If
  32.  
  33. If (flagAttr And FileAttributes.Directory) = FileAttributes.Directory Then
  34.     Console.WriteLine(FileAttributes.Directory.ToString)
  35. End If
  36.  
  37. If (flagAttr And FileAttributes.Encrypted) = FileAttributes.Encrypted Then
  38.     Console.WriteLine(FileAttributes.Encrypted.ToString)
  39. End If
  40.    
  41. If (flagAttr And FileAttributes.Hidden) = FileAttributes.Hidden Then
  42.     Console.WriteLine(FileAttributes.Hidden.ToString)
  43. End If
  44.  
  45. If (flagAttr And FileAttributes.Normal) = FileAttributes.Normal Then
  46.     Console.WriteLine(FileAttributes.Normal.ToString)
  47. End If
  48.  
  49. If (flagAttr And FileAttributes.NotContentIndexed) = FileAttributes.NotContentIndexed Then
  50.     Console.WriteLine(FileAttributes.NotContentIndexed.ToString)
  51. End If
  52.  
  53. If (flagAttr And FileAttributes.Offline) = FileAttributes.Offline Then
  54.     Console.WriteLine(FileAttributes.Offline.ToString)
  55. End If
  56.  
  57. ' aparentemente no funciona para las carpetas
  58. If (flagAttr And FileAttributes.ReadOnly) = FileAttributes.ReadOnly Then
  59.     Console.WriteLine(FileAttributes.ReadOnly.ToString)
  60. End If
  61.  
  62. If (flagAttr And FileAttributes.ReparsePoint) = FileAttributes.ReparsePoint Then
  63.     Console.WriteLine(FileAttributes.ReparsePoint.ToString)
  64. End If
  65.  
  66. If (flagAttr And FileAttributes.SparseFile) = FileAttributes.SparseFile Then
  67.     Console.WriteLine(FileAttributes.SparseFile.ToString)
  68. End If
  69.  
  70. If (flagAttr And FileAttributes.System) = FileAttributes.System Then
  71.     Console.WriteLine(FileAttributes.System.ToString)
  72. End If
  73.  
  74. If (flagAttr And FileAttributes.Temporary) = FileAttributes.Temporary Then
  75.     Console.WriteLine(FileAttributes.Temporary.ToString)
  76. End If
  77.  
  78. End Sub