このページの本文へ

前へ 1 2 次へ

Windows Info 第487回

気づけば随分数が増えているWindowsのファイル属性

2025年06月22日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

 多くのファイルシステムでは、メタ情報としてファイルの属性(Attribute、アトリビュート)をサポートしている。ファイル属性とは、たとえば、「読み出し専用」や「隠しファイル」などのファイルやディレクトリのあり方を示すものだ。今回は、このファイル属性を考えていく。

あらためてWindowsのファイル属性を整理する

 以下の表は、Windowsのファイル属性の一覧である。左端の列挙値は、Windowsのファイルシステムで利用する属性であり、たとえば、ReFS専用の属性などもこれに含まれている。

ファイル属性

 原則的にここにあるファイル属性が現在のWindowsが扱うファイル属性である。なお、これは、Windows SDKにある「WinNT.h」で定義されている。

●ファイル属性定数 (WinNT.h)
 https://learn.microsoft.com/ja-jp/windows/win32/fileio/file-attribute-constants

 その横は、System.IO.FileAttributes 列挙型で定義されているもの。こちらは、.NETや.NET Framework(以下、NET版列挙型)で扱える。

●FileAttributes 列挙型
 https://learn.microsoft.com/ja-jp/dotnet/api/system.io.fileattributes?view=netframework-4.8.1

 ただし、.NET版列挙型は、WinNT.hで定義されているすべてのファイル属性には対応しているわけではない。とはいえ、対応していないのはOneDrive関係で追加された属性などで、それらはエクスプローラーからユーザーが手動設定したりする。

 ファイル属性で注意が必要なのは、「圧縮」と「暗号化」だ。これらは属性として定義されているものの、属性を変更すれば、勝手に圧縮や暗号化がなされるのではなく、これらの処理と合わせて属性を変更する。

 エクスプローラーからユーザーがプロパティを操作して設定する場合には、圧縮、暗号化(あるいは解凍、解読)処理がされるになっている。しかし、単なるファイル属性変更だけでは、処理が自動的に起動するわけではないので注意が必要だ。

 ファイル属性には、整数値が対応しており、32bitで2進数表現したときにお互いにぶつからないように配置してある。このため、1つのファイル/ディレクトリに対して複数のファイル属性を設定できる。論理的には、1つのファイルやディレクトリにすべての属性を指定可能である。しかし、属性によっては、ファイルやディレクトリ、ファイルシステムなどの対象が限定されているものがあるため、すべてを1つのファイルに指定することはできない。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン