VB.NETファイルパスからディレクトリ名を取得する

スポンサーリンク

ファイルパスからディレクトリ名 (フォルダ名) を取得するには、System.IO.Path クラスの GetDirectoryName メソッドを使用します。

サンプルコード

以下にサンプルコードを示します。

VB.NET 全般
    ' 親ディレクトリ名 (フォルダ名) を取得する
    Dim stParentName As String = System.IO.Path.GetDirectoryName("C:\Hoge\Foo.txt")

    ' 親ディレクトリ名 (フォルダ名) を表示する
    MessageBox.Show(stParentName)

ファイルパスから DirectoryInfo を取得するには、System.IO.Directory クラスの GetParent メソッドを使用します。

VB.NET 全般
    ' 指定したパスから親ディレクトリの DirectoryInfo を取得する
    Dim hDirInfo As System.IO.DirectoryInfo = System.IO.Directory.GetParent("C:\Hoge\Foo.txt")

    ' 親ディレクトリの名前を表示する
    MessageBox.Show(hDirInfo.FullName)

FileInfo から親ディレクトリの DirectoryInfo を取得するには、そのインスタンスから Directory プロパティを参照します。

VB.NET 全般
    ' FileInfo の新しいインスタンスを生成する
    Dim cFileInfo As New System.IO.FileInfo("C:\Hoge\Foo.txt")

    ' FileInfo から親ディレクトリの DirectoryInfo を取得する
    Dim hDirInfo As System.IO.DirectoryInfo = cFileInfo.Directory

    ' 親ディレクトリの名前を表示する
    MessageBox.Show(hDirInfo.FullName)

DirectoryInfo から親ディレクトリの DirectoryInfo を取得するには、そのインスタンスから Parent プロパティを参照します。

VB.NET 全般
    ' DirectoryInfo の新しいインスタンスを生成する
    Dim hDirInfoBar As New System.IO.DirectoryInfo("C:\Hoge\Bar\")

    ' DirectoryInfo から親ディレクトリの DirectoryInfo を取得する
    Dim hDirInfo As System.IO.DirectoryInfo = hDirInfoBar.Parent

    ' 親ディレクトリの名前を表示する
    MessageBox.Show(hDirInfo.FullName)

また、親ディレクトリ名だけならば、FileInfo のインスタンスから DirectoryName プロパティを参照することで可能です。

VB.NET 全般
    ' FileInfo の新しいインスタンスを生成する
    Dim cFileInfo As New System.IO.FileInfo("C:\Hoge\Foo.txt")

    ' FileInfo から親ディレクトリの名前を取得する
    Dim stParentName As String = cFileInfo.DirectoryName

    ' 親ディレクトリの名前を表示する
    MessageBox.Show(stParentName)

関連するリファレンス

準備中です。

スポンサーリンク