Visual Studioの使い方ファイル操作編4

プログラム学習

ファイル、フォルダの属性を取得する。
1ファイル、フォルダの属性一覧
ReadOnly
ファイルは読み込み専用です。設定可。
Hidden
ファイルは隠しファイルです。したがって通常のディレクトリ リストには表示されません。設定可。
System
システム ファイルです。このファイルはオペレーティング システムの一部です。またはオペレーティング システムが排他的に使用します。設定可。
Directory
このファイルはディレクトリです。フォルダに単独でのみ(付加ではなく)設定可。
Archive
ファイルのアーカイブ状態。アプリケーションは、この属性を使用してバックアップや削除の対象となるファイルをマークします。設定可。
Device
今後使用するために予約されています。
Normal
標準のファイルであり、他の属性セットは持ちません。この属性は単独で使用した場合だけ有効です。単独でのみ(付加ではなく)設定可。
Temporary
一時ファイルです。ファイル システムは、アクセス速度を上げるために、データをフラッシュして大容量ストレージに返すのではなく、すべてのデータをメモリに保持しようとします。一時ファイルが不要になったときは、すぐにアプリケーションで削除します。ファイルに設定可。
SparseFile
スパース ファイルです。スパース ファイルは、通常、データの大部分が 0 である大きなファイルです。
ReparsePoint
ファイルには、ファイルまたはディレクトリに関連付けられたユーザー定義のデータ ブロックである、リパース ポイントが含まれています。
Compressed
ファイルは圧縮されています。
Offline
ファイルはオフラインです。オフラインのファイルのデータは、即時には使用できません。設定可。
NotContentIndexed
ファイルには、オペレーティング システムの内容インデックス付けサービスによるインデックスは付いていません。(ファイルのプロパティの「検索を速くするため、このファイルにインデックスを付ける」の選択を解除する)設定可。
Encrypted
ファイルまたはディレクトリは暗号化されています。ファイルの場合は、ファイルのすべてのデータが暗号化されています。ディレクトリの場合は、新規作成されるファイルおよびディレクトリが既定で暗号化されます。

例えば、隠しフォルダの属性を取得するには、
DirectoryInfo info = new DirectoryInfo(“c:\ディレクトリネーム);
DirectoryInfoクラスのインスタンスを作って(info)論理積を使って隠しフォルダ(FileAttributes.Hidden)か確認します。
if ((info.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
trueを返せば隠しフォルダです。
とします。&は、論理積演算子です。01&00=00,  01&01=01,  11&10=10となります。
if ((info.Attributes & FileAttributes.System) == FileAttributes.System)
trueを返せばsystemフォルダです。

コメント

タイトルとURLをコピーしました