ファイル属性の取得及び変更をする方法を記載します。

ファイル属性の変更は、File.GetAttributes メソッドを使用します。

ファイル属性は System.IO.FileAttributesに、列挙型(enum)で宣言されています。

基本的にファイル属性は、ビット演算をしています。

ファイルの属性を取得する

Dim sFilePath As String = "c:\work\myfile.txt"		
		
' ファイルの属性を取得する
Dim uAtr As System.IO.FileAttributes = System.IO.File.GetAttributes(sFilePath)

'読み取り専用属性があるかどうか判断する
If (uAtr And System.IO.FileAttributes.ReadOnly) = System.IO.FileAttributes.ReadOnly Then
    MessageBox.Show("読み取り専用")
End If

 

ファイル属性を追加する

Dim sFilePath As String = "c:\work\myfile.txt"

'ファイルの属性を取得する
Dim uAtr As System.IO.FileAttributes = System.IO.File.GetAttributes(sFilePath)

'読み取り専用属性を追加する
System.IO.File.SetAttributes(sFilePath, uAtr Or System.IO.FileAttributes.ReadOnly)

・属性を変更する際は、一度ファイル属性を所得して、属性をand or で削除・追加をして書き戻します。

 

※System.IO.FileInfoクラスでも同じことが出来ます。