Freigeben über


Directory.SetCurrentDirectory-Methode

Legt das aktuelle Arbeitsverzeichnis der Anwendung auf das angegebene Verzeichnis fest.

Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Sub SetCurrentDirectory ( _
    path As String _
)
'Usage
Dim path As String

Directory.SetCurrentDirectory(path)
public static void SetCurrentDirectory (
    string path
)
public:
static void SetCurrentDirectory (
    String^ path
)
public static void SetCurrentDirectory (
    String path
)
public static function SetCurrentDirectory (
    path : String
)

Parameter

  • path
    Der Pfad, auf den das aktuelle Arbeitsverzeichnis festgelegt ist.

Ausnahmen

Ausnahmetyp Bedingung

IOException

Ein E/A-Fehler ist aufgetreten.

ArgumentException

path ist eine Zeichenfolge der Länge 0 (null), besteht nur aus Leerraum oder enthält ein oder mehrere durch InvalidPathChars definierte ungültige Zeichen.

ArgumentNullException

path ist NULL (Nothing in Visual Basic).

PathTooLongException

Der angegebene Pfad und/oder der Dateiname überschreiten die vom System vorgegebene Höchstlänge. Beispielsweise dürfen auf Windows-Plattformen Pfade nicht länger als 247 Zeichen und Dateinamen nicht länger als 259 Zeichen sein.

SecurityException

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf nicht verwalteten Code.

FileNotFoundException

Der angegebene Pfad wurde nicht gefunden.

Hinweise

Nach Beenden der Anwendung wird das Arbeitsverzeichnis wieder auf den ursprünglichen Speicherort (das Verzeichnis, in dem der Prozess gestartet wurde) festgelegt.

Mit dem path-Parameter dürfen relative oder absolute Pfadinformationen angegeben werden. Relative Pfadinformationen werden relativ zum aktuellen Arbeitsverzeichnis interpretiert. Informationen zum Abrufen des aktuellen Arbeitsverzeichnisses finden Sie unter GetCurrentDirectory.

Beim path-Parameter wird nicht zwischen Groß- und Kleinschreibung unterschieden.

In der folgenden Tabelle sind Beispiele für andere typische oder verwandte E/A-Aufgaben aufgeführt.

Aufgabe

Beispiel in diesem Thema

Erstellen einer Textdatei.

Gewusst wie: Schreiben von Text in eine Datei

Schreiben in eine Textdatei.

Gewusst wie: Schreiben von Text in eine Datei

Lesen aus einer Textdatei.

Gewusst wie: Lesen aus einer Textdatei

Umbenennen oder Verschieben eines Verzeichnisses.

Directory.Move

DirectoryInfo.MoveTo

Löschen eines Verzeichnisses.

Directory.Delete

DirectoryInfo.Delete

Erstellen eines Verzeichnisses.

CreateDirectory

Directory

Erstellen eines Unterverzeichnisses.

CreateSubdirectory

Hinweis zu Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows CE: Da einige Betriebssysteme für mobile Geräte keine Funktionen für aktuelle Verzeichnisse aufweisen, wird diese Methode nicht unterstützt.

Beispiel

Im folgenden Codebeispiel wird das Festlegen des aktuellen Verzeichnisses und das Anzeigen des Verzeichnisstamms veranschaulicht.

' This sample shows how to set the current directory and how to determine
' the root directory.
Imports System
Imports System.IO

Public Class DirectoryRoot
   
   Public Shared Sub Main()
      ' Create string for a directory. This value should be an existing directory
      ' or the sample will throw a DirectoryNotFoundException.
      Dim dir As String = "C:\test"
      Try
         'Set the current directory.
         Directory.SetCurrentDirectory(dir)
      Catch e As DirectoryNotFoundException
         Console.WriteLine("The specified directory does not exist. {0}", e)
      End Try
      ' Print to console the results.
      Console.WriteLine("Root directory: {0}", Directory.GetDirectoryRoot(dir))
      Console.WriteLine("Current directory: {0}", Directory.GetCurrentDirectory())
   End Sub 'Main
End Class '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
// 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.
using namespace System;
using namespace System::IO;
int 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

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

Directory-Klasse
Directory-Member
System.IO-Namespace

Weitere Ressourcen

Datei- und Stream-E/A
Gewusst wie: Lesen aus einer Textdatei
Gewusst wie: Schreiben von Text in eine Datei