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

Directory.SetCurrentDirectory メソッド

アプリケーションの現在の作業ディレクトリを指定したディレクトリに設定します。

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

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

パラメータ

path

現在の作業ディレクトリが設定されるパス。

例外の種類条件

IOException

IO エラーが発生しました。

ArgumentException

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

ArgumentNullException

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

PathTooLongException

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

SecurityException

アンマネージ コードにアクセスするために必要なアクセス許可が、呼び出し元にありません。

FileNotFoundException

指定したパスが見つかりませんでした。

DirectoryNotFoundException

指定したディレクトリが見つかりませんでした。

アプリケーションが終了すると、作業ディレクトリは元の位置 (プロセスが開始されたディレクトリ) に戻ります。

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

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

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

Windows Mobile 2003 for Pocket PC,Windows Mobile 2003 for Smartphone,Windows CE プラットフォームメモ : 一部のモバイル デバイスのオペレーティング システムは "現在のディレクトリ" 機能を備えていないため、このメソッドがサポートされません。

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

// 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
表示: