FileAttr ファイル属性
FileAttr関数は指定されたファイルの属性を返します。
Delphiでは FileGetAttr関数を使用します。
以下のサンプルは G:\cp32e408.exe の読みとり専用属性を外すものですが、 定数 faReadOnly が DBユニットにも定義されているため、明示的に SysUtilsユニットを宣言しています。この問題を回避するにはこのように記述するか、もしくは uses 節の宣言で SysUtilsを Db よりも後方に配置します。
| ■ FileGetAttr の使用例 |
procedure TForm1.Button1Click(Sender: TObject);
var
S : string;
Attr : integer;
begin
//処理対象のファイル
S := 'G:\cp32e408.exe';
//ファイルの存在チェック
if FileExists(S) then begin
//現在の属性を取得
Attr := FileGetAttr(S);
//読みとり専用かどうか
if (Attr and SysUtils.faReadOnly <> 0) then begin
//読みとり専用ならその属性を外す
FileSetAttr(S, Attr - SysUtils.faReadOnly);
end;
end;
end;
|
faReadOnly などは集合型ではないので注意して下さい。定数の内容は以下のとおり。
定数 |
意味 |
faReadOnly |
読み出し専用ファイル |
faHidden |
非表示ファイル |
faSysFile |
システムファイル |
faVolumeID |
ボリュームファイル |
faDirectory |
ディレクトリファイル |
faArchive |
アーカイブファイル |
faAnyFile |
すべてのファイル |