このドキュメントはアーカイブされており、メンテナンスされていません。

Directory.GetDirectoryRoot メソッド

指定したパスのボリューム情報またはルート情報、あるいはその両方を返します。

名前空間: System.IO
アセンブリ: mscorlib (mscorlib.dll 内)

public static string GetDirectoryRoot (
	string path
)
public static String GetDirectoryRoot (
	String path
)
public static function GetDirectoryRoot (
	path : String
) : String
適用できません。

パラメータ

path

ファイルまたはディレクトリのパス。

戻り値

指定したパスのボリューム情報またはルート情報、あるいはその両方を含む文字列。

例外の種類条件

UnauthorizedAccessException

呼び出し元に、必要なアクセス許可がありません。

ArgumentException

path が、長さが 0 の文字列であるか、空白しか含んでいないか、または InvalidPathChars で定義されている無効な文字を 1 つ以上含んでいます。

ArgumentNullException

path が null 参照 (Visual Basic では Nothing) です。

PathTooLongException

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windows ベースのプラットフォームの場合、パスの長さは 248 文字未満、ファイル名の長さは 260 文字未満である必要があります。

このメソッドは、GetFullPath で返される path の絶対パス名を取得し、ルート ディレクトリの情報を返します。指定したパスが存在する必要はありません。

path パラメータは、相対パス情報または絶対パス情報を指定することを許可されています。相対パス情報は、現在の作業ディレクトリに対して相対的に解釈されます。現在の作業ディレクトリを取得するには、GetCurrentDirectory のトピックを参照してください。

path パラメータでは大文字と小文字が区別されません。

共通 I/O タスクの一覧については、「共通 I/O タスク」を参照してください。

現在のディレクトリの設定およびディレクトリ ルートの表示を実行するコード例を次に示します。

// This sample shows how to set the current directory and how to determine
// the root directory.
using System;
using System.IO;

namespace IOSamples
{
  public class DirectoryRoot
  {
    public static void Main()
    {
	// Create string for a directory. This value should be an existing directory
	// or the sample will throw a DirectoryNotFoundException.
      string dir = @"C:\test";		
	  try
	  {
		  //Set the current directory.
		  Directory.SetCurrentDirectory(dir);
	  }
	  catch (DirectoryNotFoundException e)
	  {
		  Console.WriteLine("The specified directory does not exist. {0}", e);
	  }
	// Print to console the results.
	  Console.WriteLine("Root directory: {0}", Directory.GetDirectoryRoot(dir));
	  Console.WriteLine("Current directory: {0}", Directory.GetCurrentDirectory());
    }
  }
}
// The output of this sample depends on what value you assign to the variable dir.
// If the directory c:\test exists, the output for this sample is:
// Root directory: C:\
// Current directory: C:\test


// This sample shows how to set the current directory and how to determine
// the root directory.

import System.*;
import System.IO.*;

public class DirectoryRoot
{
    public static void main(String[] args)
    {
        // Create string for a directory. This value should be an existing 
        // directory or the sample will throw a DirectoryNotFoundException.
        String dir = "C:\\test";
        try {
            //Set the current directory.
            Directory.SetCurrentDirectory(dir);
        }
        catch (DirectoryNotFoundException e) {
            Console.WriteLine("The specified directory does not exist. {0}", e);
        }
        // Print to console the results.
        Console.WriteLine("Root directory: {0}",
            Directory.GetDirectoryRoot(dir));
        Console.WriteLine("Current directory: {0}",
            Directory.GetCurrentDirectory());
    } //main
} //DirectoryRoot
// The output of this sample depends on what value you assign to the 
// variable dir.
// If the directory c:\test exists, the output for this sample is:
// Root directory: C:\
// Current directory: C:\test

Windows 98,Windows Server 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

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

.NET Compact Framework

サポート対象 : 2.0,1.0

XNA Framework

サポート対象 : 1.0
表示: