Provides attributes for files and directories.
This enumeration supports a bitwise combination of its member values.
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
The file is read-only. ReadOnly
is supported on Windows, Linux, and macOS. On Linux and macOS, changing the ReadOnly
flag is a permissions operation.
The file is hidden, and thus is not included in an ordinary directory listing. Hidden
is supported on Windows, Linux, and macOS.
The file is a system file. That is, the file is part of the operating system or is used exclusively by the operating system.
Directory 16The file is a directory. Directory
is supported on Windows, Linux, and macOS.
This file is marked to be included in incremental backup operation. Windows sets this attribute whenever the file is modified, and backup software should clear it when processing the file during incremental backup.
Device 64Reserved for future use.
Normal 128The file is a standard file that has no special attributes. This attribute is valid only if it is used alone. Normal
is supported on Windows, Linux, and macOS.
The file is temporary. A temporary file contains data that is needed while an application is executing but is not needed after the application is finished. File systems try to keep all the data in memory for quicker access rather than flushing the data back to mass storage. A temporary file should be deleted by the application as soon as it is no longer needed.
SparseFile 512The file is a sparse file. Sparse files are typically large files whose data consists of mostly zeros.
ReparsePoint 1024The file contains a reparse point, which is a block of user-defined data associated with a file or a directory. ReparsePoint
is supported on Windows, Linux, and macOS.
The file is compressed.
Offline 4096The file is offline. The data of the file is not immediately available.
NotContentIndexed 8192The file will not be indexed by the operating system's content indexing service.
Encrypted 16384The file or directory is encrypted. For a file, this means that all data in the file is encrypted. For a directory, this means that encryption is the default for newly created files and directories.
IntegrityStream 32768The file or directory includes data integrity support. When this value is applied to a file, all data streams in the file have integrity support. When this value is applied to a directory, all new files and subdirectories within that directory, by default, include integrity support.
NoScrubData 131072The file or directory is excluded from the data integrity scan. When this value is applied to a directory, by default, all new files and subdirectories within that directory are excluded from data integrity.
ExamplesThe following example shows how to retrieve the attributes for a file and check if the file is read-only.
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
You can get attributes for files and directories by calling the File.GetAttributes method, and you can set them by calling the File.SetAttributes method.
It is not possible to change the compression status of a File object by using the File.SetAttributes method. Instead, you must actually compress the file using either a compression tool or one of the classes in the System.IO.Compression namespace.
The following attributes are not supported by .NET Core on Linux and macOS:
On Unix systems, the value returned by File.GetAttributes includes Hidden
for a file whose name begins with a period ("."). On macOS, you can get or set the hidden flag.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4