FileAttributes Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona los atributos para archivos y directorios.
Esta enumeración admite una combinación bit a bit de sus valores de miembro.
public enum class FileAttributes
[System.Flags]
public enum FileAttributes
[System.Flags]
[System.Serializable]
public enum FileAttributes
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum FileAttributes
[<System.Flags>]
type FileAttributes =
[<System.Flags>]
[<System.Serializable>]
type FileAttributes =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileAttributes =
Public Enum FileAttributes
- Herencia
- Atributos
Campos
Archive | 32 | Este archivo está marcado para incluirse en la operación de copia de seguridad incremental. Windows establece este atributo siempre que se modifica el archivo, y el software de copia de seguridad debe borrarlo al procesar el archivo durante la copia de seguridad incremental. |
Compressed | 2048 | El archivo está comprimido. |
Device | 64 | Reservado para un uso futuro. |
Directory | 16 | El archivo es un directorio. |
Encrypted | 16384 | El archivo o directorio está cifrado. Para un archivo, esto significa que todos los datos del archivo están cifrados. Para un directorio, esto significa que el cifrado viene predeterminado para todos los archivos y directorios recién creados. |
2 | El archivo está oculto y, por lo tanto, no se incluye en un listado de directorios ordinario. |
|
IntegrityStream | 32768 | El archivo o directorio incluye compatibilidad con integridad de datos. Cuando este valor se aplica a un archivo, todos los flujos de datos del archivo admiten integridad. Cuando este valor se aplica a un directorio, todos los nuevos archivos y subdirectorios dentro de ese directorio, de forma predeterminada, incluirán compatibilidad con integridad. |
None | 0 | |
Normal | 128 | El archivo es un archivo estándar que no tiene ningún atributo especial. Este atributo sólo es válido si se usa por sí solo. |
NoScrubData | 131072 | El archivo o directorio se excluye del análisis de integridad de datos. Cuando este valor se aplica a un directorio, de forma predeterminada, todos los nuevos archivos y subdirectorios dentro de ese directorio se excluyen de la integridad de datos. |
NotContentIndexed | 8192 | El servicio de Index Server de contenido del sistema operativo no indizará el archivo. |
Offline | 4096 | El archivo no tiene conexión. Los datos del archivo no están disponibles de forma inmediata. |
ReadOnly | 1 | El archivo es de solo lectura. |
ReparsePoint | 1024 | El archivo contiene un punto de reanálisis; es decir, un bloque de datos definidos por el usuario asociado a un archivo o a un directorio. |
SparseFile | 512 | El archivo es un archivo disperso. Los archivos dispersos suelen ser grandes archivos en los que la mayoría de los datos son ceros. |
System | 4 | El archivo es un archivo de sistema. Es decir, el archivo forma parte del sistema operativo o lo utiliza exclusivamente el sistema operativo. |
Temporary | 256 | El archivo es temporal. Un archivo temporal contiene datos que son necesarios mientras una aplicación se está ejecutando, pero que no se necesitan una vez finalizada la aplicación. Los sistemas de archivos intentan conservar en memoria todos los datos para que el acceso sea más rápido, en lugar de vaciando los datos para devolverlos al almacenamiento masivo. La aplicación debería eliminar los archivos temporales tan pronto dejan de ser necesarios. |
Ejemplos
En el ejemplo siguiente se muestra cómo recuperar los atributos de un archivo y comprobar si el archivo es de solo lectura.
using System;
using System.IO;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
FileAttributes attributes = File.GetAttributes("c:/Temp/testfile.txt");
if ((attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
{
Console.WriteLine("read-only file");
}
else
{
Console.WriteLine("not read-only file");
}
}
}
}
open System.IO
let attributes = File.GetAttributes "c:/Temp/testfile.txt"
if attributes &&& FileAttributes.ReadOnly = FileAttributes.ReadOnly then
printfn "read-only file"
else
printfn "not read-only file"
Imports System.IO
Imports System.Text
Module Module1
Sub Main()
Dim attributes = File.GetAttributes("c:/Temp/testfile.txt")
If ((attributes And FileAttributes.ReadOnly) = FileAttributes.ReadOnly) Then
Console.WriteLine("read-only file")
Else
Console.WriteLine("not read-only file")
End If
End Sub
End Module
Comentarios
Puede obtener atributos para archivos y directorios llamando al File.GetAttributes método y puede establecerlos llamando al File.SetAttributes método .
No es posible cambiar el estado de compresión de un File objeto mediante el File.SetAttributes método . En su lugar, debe comprimir realmente el archivo mediante una herramienta de compresión o una de las clases del System.IO.Compression espacio de nombres .
.NET Core no admite los siguientes atributos en Linux y macOS:
- FileAttributes.Archive
- FileAttributes.Compressed
- FileAttributes.Device
- FileAttributes.Encrypted
- FileAttributes.IntegrityStream
- FileAttributes.NoScrubData
- FileAttributes.NotContentIndexed
- FileAttributes.Offline
- FileAttributes.SparseFile
- FileAttributes.System
- FileAttributes.Temporary
En los sistemas Unix, el valor devuelto por File.GetAttributes incluye Hidden
para un archivo cuyo nombre comienza por un punto ("."). En macOS, puede obtener o establecer la marca oculta.