FileAttributes 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ファイルとディレクトリの属性を提供します。
この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。
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
- 継承
- 属性
フィールド
| 名前 | 値 | 説明 |
|---|---|---|
| ReadOnly | 1 | ファイルは読み取り専用です。
|
| 2 | ファイルは非表示であるため、通常のディレクトリ 一覧には含まれません。
|
|
| System | 4 | ファイルはシステム ファイルです。 つまり、ファイルはオペレーティング システムの一部であるか、オペレーティング システムによってのみ使用されます。 |
| Directory | 16 | ファイルはディレクトリです。
|
| Archive | 32 | このファイルは、増分バックアップ操作に含まれるとマークされます。 Windowsは、ファイルが変更されるたびにこの属性を設定します。バックアップ ソフトウェアは、増分バックアップ中にファイルを処理するときに、この属性をクリアする必要があります。 |
| Device | 64 | 将来の使用のために予約済み。 |
| Normal | 128 | このファイルは、特別な属性を持たない標準ファイルです。 この属性は、単独で使用される場合にのみ有効です。
|
| Temporary | 256 | ファイルは一時的なものです。 一時ファイルには、アプリケーションの実行中に必要なデータが含まれていますが、アプリケーションの完了後は必要ありません。 ファイル システムでは、大量ストレージにデータをフラッシュするのではなく、すべてのデータをメモリ内に保持して、アクセスを高速化しようとします。 一時ファイルは、不要になったらすぐにアプリケーションによって削除する必要があります。 |
| SparseFile | 512 | ファイルはスパース ファイルです。 スパース ファイルは通常、データがほぼゼロで構成される大きなファイルです。 |
| ReparsePoint | 1024 | ファイルには再解析ポイントが含まれています。これは、ファイルまたはディレクトリに関連付けられているユーザー定義データのブロックです。
|
| Compressed | 2048 | ファイルは圧縮されます。 |
| Offline | 4096 | ファイルはオフラインです。 ファイルのデータはすぐには使用できません。 |
| NotContentIndexed | 8192 | ファイルは、オペレーティング システムのコンテンツ インデックス作成サービスによってインデックスが作成されません。 |
| Encrypted | 16384 | ファイルまたはディレクトリは暗号化されます。 ファイルの場合、これはファイル内のすべてのデータが暗号化されることを意味します。 ディレクトリの場合は、暗号化が新しく作成されたファイルとディレクトリの既定値であることを意味します。 |
| IntegrityStream | 32768 | ファイルまたはディレクトリには、データ整合性のサポートが含まれています。 この値をファイルに適用すると、ファイル内のすべてのデータ ストリームで整合性がサポートされます。 この値をディレクトリに適用すると、既定では、そのディレクトリ内のすべての新しいファイルとサブディレクトリに整合性のサポートが含まれます。 |
| NoScrubData | 131072 | ファイルまたはディレクトリは、データ整合性スキャンから除外されます。 この値をディレクトリに適用すると、既定では、そのディレクトリ内のすべての新しいファイルとサブディレクトリがデータ整合性から除外されます。 |
例
次の例は、ファイルの属性を取得し、ファイルが読み取り専用かどうかを確認する方法を示しています。
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
注釈
File.GetAttributes メソッドを呼び出すことでファイルとディレクトリの属性を取得できます。また、File.SetAttributes メソッドを呼び出して設定することもできます。
File.SetAttributes メソッドを使用して、File オブジェクトの圧縮状態を変更することはできません。 代わりに、圧縮ツールまたは System.IO.Compression 名前空間のいずれかのクラスを使用して、ファイルを実際に圧縮する必要があります。
Linux および macOS 上の .NET Core では、次の属性はサポートされていません。
- FileAttributes.Archive
- FileAttributes.Compressed
- FileAttributes.Device
- FileAttributes.Encrypted
- FileAttributes.IntegrityStream
- FileAttributes.NoScrubData
- FileAttributes.NotContentIndexed
- FileAttributes.Offline
- FileAttributes.SparseFile
- FileAttributes.System
- FileAttributes.Temporary
Unix システムでは、 File.GetAttributes によって返される値には、名前がピリオド (".") で始まるファイルの Hidden が含まれます。 macOS では、非表示フラグを取得または設定できます。