Path.GetDirectoryName メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

Dim path As String Dim returnValue As String returnValue = Path.GetDirectoryName(path)
戻り値
path がルート ディレクトリを示す場合、path または null 参照 (Visual Basic では Nothing) のディレクトリ情報を含む String は空の文字列 ("") または null 参照 (Visual Basic では Nothing) です。path にディレクトリ情報が含まれていない場合は、String.Empty を返します。


ほとんどの場合、このメソッドは、パス内の最後の DirectorySeparatorChar または AltDirectorySeparatorChar を含めずに、それよりも前にあるすべての文字で構成された文字列を返します。パスがルート ディレクトリ ("c:\" など) で構成されている場合は、null が返されます。このメソッドは "file:" を使用するパスをサポートしていません。返されるパスには、DirectorySeparatorChar または AltDirectorySeparatorChar は含まれないため、返されたパスを GetDirectoryName メソッドに再度渡すと、返された文字列に対してこのメソッドを呼び出すたびに 1 フォルダ レベルの切り捨てが行われます。たとえば、パス "C:\Directory\SubDirectory\test.txt" を GetDirectoryName メソッドに渡すと、"C:\Directory\SubDirectory" が返されます。この文字列 "C:\Directory\SubDirectory" を GetDirectoryName に渡すと、"C:\Directory" になります。
このメソッドの使用例については、「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。

Windows ベースのデスクトップ プラットフォーム上で GetDirectoryName メソッドを使用するコード例を次に示します。
Dim fileName As String = "C:\mydir\myfile.ext" Dim pathname As String = "C:\mydir\" Dim rootPath As String = "C:\" Dim directoryName As String directoryName = Path.GetDirectoryName(fileName) Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", fileName, directoryName) directoryName = Path.GetDirectoryName(pathname) Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", pathname, directoryName) directoryName = Path.GetDirectoryName(rootPath) Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", rootPath, directoryName) 'This code produces the following output: ' 'GetDirectoryName('C:\mydir\myfile.ext') returns 'C:\mydir' 'GetDirectoryName('C:\mydir\') returns 'C:\mydir' 'GetDirectoryName('C:\') returns ''
string fileName = @"C:\mydir\myfile.ext"; string path = @"C:\mydir\"; string rootPath = @"C:\"; string directoryName; directoryName = Path.GetDirectoryName(fileName); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", fileName, directoryName); directoryName = Path.GetDirectoryName(path); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", path, directoryName); directoryName = Path.GetDirectoryName(rootPath); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", rootPath, directoryName); /* This code produces the following output: GetDirectoryName('C:\mydir\myfile.ext') returns 'C:\mydir' GetDirectoryName('C:\mydir\') returns 'C:\mydir' GetDirectoryName('C:\') returns '' */
String^ fileName = "C:\\mydir\\myfile.ext"; String^ path = "C:\\mydir\\"; String^ rootPath = "C:\\"; String^ directoryName; directoryName = Path::GetDirectoryName( fileName ); Console::WriteLine( "GetDirectoryName('{0}') returns '{1}'", fileName, directoryName ); directoryName = Path::GetDirectoryName( path ); Console::WriteLine( "GetDirectoryName('{0}') returns '{1}'", path, directoryName ); directoryName = Path::GetDirectoryName( rootPath ); Console::WriteLine( "GetDirectoryName('{0}') returns '{1}'", rootPath, directoryName ); /* This code produces the following output: GetDirectoryName('C:\mydir\myfile.ext') returns 'C:\mydir' GetDirectoryName('C:\mydir\') returns 'C:\mydir' GetDirectoryName('C:\') returns '' */
String fileName = "C:\\mydir\\myfile.ext"; String path = "C:\\mydir\\"; String rootPath = "C:\\"; String directoryName; directoryName = Path.GetDirectoryName(fileName); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", fileName, directoryName); directoryName = Path.GetDirectoryName(path); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", path, directoryName); directoryName = Path.GetDirectoryName(rootPath); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", rootPath, directoryName); /* This code produces the following output: GetDirectoryName('C:\mydir\myfile.ext') returns 'C:\mydir' GetDirectoryName('C:\mydir\') returns 'C:\mydir' GetDirectoryName('C:\') returns '' */
var fileName : String = "C:\\mydir\\myfile.ext"; var path : String = "C:\\mydir\\"; var rootPath : String = "C:\\"; var directoryName : String; directoryName = Path.GetDirectoryName(fileName); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", fileName, directoryName); directoryName = Path.GetDirectoryName(path); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", path, directoryName); directoryName = Path.GetDirectoryName(rootPath); Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", rootPath, directoryName); /* This code produces the following output: GetDirectoryName('C:\mydir\myfile.ext') returns 'C:\mydir' GetDirectoryName('C:\mydir\') returns 'C:\mydir' GetDirectoryName('C:\') returns '' */

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からPath.GetDirectoryName メソッドを検索する場合は、下記のリンクをクリックしてください。

- Path.GetDirectoryName メソッドのページへのリンク