ここではSystem.IO.Directoryクラスによるファイルの操作を紹介します。
目次
System.IO.Directoryクラスの使用例
カレントディレクトリを取得する(GetCurrentDirectoryメソッド)
アプリケーションの現在の作業ディレクトリを取得します。
Dim path As String = System.IO.Directory.GetCurrentDirectory()
Console.WriteLine(path)
フォルダの存在を確認する(Existsメソッド)
If System.IO.Directory.Exists("C:\temp") Then
Console.WriteLine("存在する")
Else
Console.WriteLine("存在しない")
End If
フォルダ内のファイル名を取得する(GetFilesメソッド)
2番目の引数は検索パターンを指定します。*を指定すると全ファイルになります。
3番目の引数はサブフォルダを含めるかを指定できます。
' 拡張子がtxtのファイルを取得する
For Each path As String In System.IO.Directory.GetFiles("C:\temp", "*.txt")
Console.WriteLine(path)
Next
' サブフォルダを含めてファイルを取得する
For Each path As String In System.IO.Directory.GetFiles("C:\temp", "*.txt", System.IO.SearchOption.AllDirectories)
Console.WriteLine(path)
Next
フォルダ内のサブフォルダ名を取得する(GetDirectoriesメソッド)
For Each path As String In System.IO.Directory.GetDirectories("C:\temp")
Console.WriteLine(path)
Next
フォルダ内のフォルダ名とファイル名を取得する(GetFileSystemEntriesメソッド)
For Each path As String In System.IO.Directory.GetFileSystemEntries("C:\temp")
Console.WriteLine(path)
Next
存在する論理ドライブ名をすべて取得する(GetLogicalDrivesメソッド)
コンピューターの論理ドライブ名を “<ドライブ文字>:\” の形式で取得します。
For Each path As String In System.IO.Directory.GetLogicalDrives()
Console.WriteLine(path)
Next
カレントディレクトリを設定する(SetCurrentDirectoryメソッド)
'C:\tempをカレントディレクトリにする
System.IO.Directory.SetCurrentDirectory("C:\temp")
Console.WriteLine(System.IO.Directory.GetCurrentDirectory()) '結果:C:\temp
フォルダを作成する(CreateDirectoryメソッド)
System.IO.Directory.CreateDirectory("C:\temp\bak")
フォルダを移動する(Moveメソッド)
既に同じ名前のフォルダが存在した場合は移動できません。
System.IO.Directory.Move("C:\temp\bak", "C:\Backup")
フォルダ名を変更する(Moveメソッド)
空のフォルダしか変更できません。
System.IO.Directory.Move("C:\temp", "C:\Backup")
フォルダを削除する(Deleteメソッド)
' 2番目の引数をFalseにしたらフォルダ内にファイルがあったら削除しない
System.IO.Directory.Delete("C:\temp\bak", False)
' 2番目の引数をTrueにしたらフォルダ内にファイルがあっても削除する
System.IO.Directory.Delete("C:\temp\bak", True)
以上、System.IO.Directoryクラスによるファイルの操作について解説しました。