File.Move File.Move File.Move File.Move Method

Definition

Überlädt

Move(String, String) Move(String, String) Move(String, String) Move(String, String)

Verschiebt eine angegebene Datei an einen neuen Speicherort und ermöglicht das Angeben eines neuen Dateinamens.Moves a specified file to a new location, providing the option to specify a new file name.

Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean)

Verschiebt eine angegebene Datei an einen neuen Speicherort und stellt die Optionen zum Angeben eines neuen Dateinamens und zum Überschreiben der Zieldatei bereit, falls diese bereits vorhanden ist.Moves a specified file to a new location, providing the options to specify a new file name and to overwrite the destination file if it already exists.

Move(String, String) Move(String, String) Move(String, String) Move(String, String)

Verschiebt eine angegebene Datei an einen neuen Speicherort und ermöglicht das Angeben eines neuen Dateinamens.Moves a specified file to a new location, providing the option to specify a new file name.

public:
 static void Move(System::String ^ sourceFileName, System::String ^ destFileName);
public static void Move (string sourceFileName, string destFileName);
static member Move : string * string -> unit
Public Shared Sub Move (sourceFileName As String, destFileName As String)

Parameter

sourceFileName
String String String String

Der Name der zu verschiebenden Datei.The name of the file to move. Kann einen absoluten oder relativen Pfad enthalten.Can include a relative or absolute path.

destFileName
String String String String

Der neue Pfad und Name für die Datei.The new path and name for the file.

Ausnahmen

Die Zieldatei ist bereits vorhanden.The destination file already exists.

- oder --or- sourceFileName wurde nicht gefunden.sourceFileName was not found.

sourceFileName oder destFileName ist null.sourceFileName or destFileName is null.

sourceFileName oder destFileName ist eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält ungültige Zeichen gemäß der Definition von InvalidPathChars.sourceFileName or destFileName is a zero-length string, contains only white space, or contains invalid characters as defined in InvalidPathChars.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.The caller does not have the required permission.

Der angegebene Pfad und/oder Dateiname überschreiten die vom System definierte maximale Länge.The specified path, file name, or both exceed the system-defined maximum length.

Der in sourceFileName oder destFileName angegebene Pfad ist ungültig (er befindet sich z. B.auf einem nicht zugeordneten Laufwerk).The path specified in sourceFileName or destFileName is invalid, (for example, it is on an unmapped drive).

sourceFileName oder destFileName weist ein ungültiges Format auf.sourceFileName or destFileName is in an invalid format.

Beispiele

Im folgenden Beispiel wird eine Datei verschoben.The following example moves a file.

using namespace System;
using namespace System::IO;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   String^ path2 = "c:\\temp2\\MyTest.txt";
   try
   {
      if (  !File::Exists( path ) )
      {
         
         // This statement ensures that the file is created,
         // but the handle is not kept.
         FileStream^ fs = File::Create( path );
         if ( fs )
                  delete (IDisposable^)fs;
      }
      
      // Ensure that the target does not exist.
      if ( File::Exists( path2 ) )
            File::Delete( path2 );
      
      // Move the file.
      File::Move( path, path2 );
      Console::WriteLine( "{0} was moved to {1}.", path, path2 );
      
      // See if the original exists now.
      if ( File::Exists( path ) )
      {
         Console::WriteLine( "The original file still exists, which is unexpected." );
      }
      else
      {
         Console::WriteLine( "The original file no longer exists, which is expected." );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";
        string path2 = @"c:\temp2\MyTest.txt";
        try 
        {
            if (!File.Exists(path)) 
            {
                // This statement ensures that the file is created,
                // but the handle is not kept.
                using (FileStream fs = File.Create(path)) {}
            }

            // Ensure that the target does not exist.
            if (File.Exists(path2))	
            File.Delete(path2);

            // Move the file.
            File.Move(path, path2);
            Console.WriteLine("{0} was moved to {1}.", path, path2);

            // See if the original exists now.
            if (File.Exists(path)) 
            {
                Console.WriteLine("The original file still exists, which is unexpected.");
            } 
            else 
            {
                Console.WriteLine("The original file no longer exists, which is expected.");
            }			

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim path2 As String = "c:\temp2\MyTest.txt"

        Try
            If File.Exists(path) = False Then
                ' This statement ensures that the file is created,
                ' but the handle is not kept.
                Dim fs As FileStream = File.Create(path)
                fs.Close()
            End If

            ' Ensure that the target does not exist.
            If File.Exists(path2) Then
                File.Delete(path2)
            End If

            ' Move the file.
            File.Move(path, path2)
            Console.WriteLine("{0} moved to {1}", path, path2)

            ' See if the original file exists now.
            If File.Exists(path) Then
                Console.WriteLine("The original file still exists, which is unexpected.")
            Else
                Console.WriteLine("The original file no longer exists, which is expected.")
            End If
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

Hinweise

Diese Methode funktioniert über Datenträgervolumes hinweg und löst keine Ausnahme aus, wenn Quelle und Ziel identisch sind.This method works across disk volumes, and it does not throw an exception if the source and destination are the same.

Beachten Sie Folgendes: Wenn Sie versuchen, eine Datei zu ersetzen, indem Sie eine Datei mit demselben Namen in dieses IOException Verzeichnis verschieben, wird eine ausgelöst.Note that if you attempt to replace a file by moving a file of the same name into that directory, an IOException is thrown. Verwenden Sie zu diesem Zweck Move(String, String, Boolean) stattdessen.For that purpose, call Move(String, String, Boolean) instead.

Das sourceFileName - destFileName Argument und das-Argument können relative oder absolute Pfadinformationen enthalten.The sourceFileName and destFileName arguments can include relative or absolute path information. Relative Pfadinformationen werden als relativ zum aktuellen Arbeitsverzeichnis interpretiert.Relative path information is interpreted as relative to the current working directory. Informationen zum Abrufen des aktuellen Arbeitsverzeichnisses finden GetCurrentDirectorySie unter.To obtain the current working directory, see GetCurrentDirectory.

Wenn Sie versuchen, eine Datei auf Datenträgervolumes zu verschieben, und diese Datei verwendet wird, wird die Datei in das Ziel kopiert, jedoch nicht aus der Quelle gelöscht.If you try to move a file across disk volumes and that file is in use, the file is copied to the destination, but it is not deleted from the source.

Eine Liste der allgemeinen e/a-Aufgaben finden Sie unter Allgemeine e/a-Aufgaben.For a list of common I/O tasks, see Common I/O Tasks.

Sicherheit

FileIOPermission
zum Lesen von sourceFileName und Schreiben in destFileName.for reading from sourceFileName and writing to destFileName. Zugehörige Enumerationen Read:,WriteAssociated enumerations: Read, Write

Siehe auch

Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean) Move(String, String, Boolean)

Verschiebt eine angegebene Datei an einen neuen Speicherort und stellt die Optionen zum Angeben eines neuen Dateinamens und zum Überschreiben der Zieldatei bereit, falls diese bereits vorhanden ist.Moves a specified file to a new location, providing the options to specify a new file name and to overwrite the destination file if it already exists.

public:
 static void Move(System::String ^ sourceFileName, System::String ^ destFileName, bool overwrite);
public static void Move (string sourceFileName, string destFileName, bool overwrite);
static member Move : string * string * bool -> unit
Public Shared Sub Move (sourceFileName As String, destFileName As String, overwrite As Boolean)

Parameter

sourceFileName
String String String String

Der Name der zu verschiebenden Datei.The name of the file to move. Kann einen absoluten oder relativen Pfad enthalten.Can include a relative or absolute path.

destFileName
String String String String

Der neue Pfad und Name für die Datei.The new path and name for the file.

overwrite
Boolean Boolean Boolean Boolean

true zum Überschreiben der Zieldatei, wenn diese bereits vorhanden ist, andernfalls false.true to overwrite the destination file if it already exists; false otherwise.

Ausnahmen

sourceFileName wurde nicht gefunden.sourceFileName was not found.

sourceFileName oder destFileName ist null.sourceFileName or destFileName is null.

sourceFileName oder destFileName ist eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält ungültige Zeichen gemäß der Definition von InvalidPathChars.sourceFileName or destFileName is a zero-length string, contains only white space, or contains invalid characters as defined in InvalidPathChars.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.The caller does not have the required permission.

Der angegebene Pfad und/oder Dateiname überschreiten die vom System definierte maximale Länge.The specified path, file name, or both exceed the system-defined maximum length.

Der in sourceFileName oder destFileName angegebene Pfad ist ungültig (er befindet sich z. B.auf einem nicht zugeordneten Laufwerk).The path specified in sourceFileName or destFileName is invalid, (for example, it is on an unmapped drive).

sourceFileName oder destFileName weist ein ungültiges Format auf.sourceFileName or destFileName is in an invalid format.

Beispiele

Im folgenden Beispiel wird eine Datei verschoben.The following example moves a file.

using namespace System;
using namespace System::IO;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   String^ path2 = "c:\\temp2\\MyTest.txt";
   try
   {
      if (  !File::Exists( path ) )
      {
         
         // This statement ensures that the file is created,
         // but the handle is not kept.
         FileStream^ fs = File::Create( path );
         if ( fs )
                  delete (IDisposable^)fs;
      }
      
      // Ensure that the target does not exist.
      if ( File::Exists( path2 ) )
            File::Delete( path2 );
      
      // Move the file.
      File::Move( path, path2 );
      Console::WriteLine( "{0} was moved to {1}.", path, path2 );
      
      // See if the original exists now.
      if ( File::Exists( path ) )
      {
         Console::WriteLine( "The original file still exists, which is unexpected." );
      }
      else
      {
         Console::WriteLine( "The original file no longer exists, which is expected." );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";
        string path2 = @"c:\temp2\MyTest.txt";
        try 
        {
            if (!File.Exists(path)) 
            {
                // This statement ensures that the file is created,
                // but the handle is not kept.
                using (FileStream fs = File.Create(path)) {}
            }

            // Ensure that the target does not exist.
            if (File.Exists(path2))	
            File.Delete(path2);

            // Move the file.
            File.Move(path, path2);
            Console.WriteLine("{0} was moved to {1}.", path, path2);

            // See if the original exists now.
            if (File.Exists(path)) 
            {
                Console.WriteLine("The original file still exists, which is unexpected.");
            } 
            else 
            {
                Console.WriteLine("The original file no longer exists, which is expected.");
            }			

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim path2 As String = "c:\temp2\MyTest.txt"

        Try
            If File.Exists(path) = False Then
                ' This statement ensures that the file is created,
                ' but the handle is not kept.
                Dim fs As FileStream = File.Create(path)
                fs.Close()
            End If

            ' Ensure that the target does not exist.
            If File.Exists(path2) Then
                File.Delete(path2)
            End If

            ' Move the file.
            File.Move(path, path2)
            Console.WriteLine("{0} moved to {1}", path, path2)

            ' See if the original file exists now.
            If File.Exists(path) Then
                Console.WriteLine("The original file still exists, which is unexpected.")
            Else
                Console.WriteLine("The original file no longer exists, which is expected.")
            End If
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

Hinweise

Diese Methode funktioniert über Datenträgervolumes hinweg und löst keine Ausnahme aus, wenn Quelle und Ziel identisch sind.This method works across disk volumes, and it does not throw an exception if the source and destination are the same.

Das sourceFileName - destFileName Argument und das-Argument können relative oder absolute Pfadinformationen enthalten.The sourceFileName and destFileName arguments can include relative or absolute path information. Relative Pfadinformationen werden als relativ zum aktuellen Arbeitsverzeichnis interpretiert.Relative path information is interpreted as relative to the current working directory. Informationen zum Abrufen des aktuellen Arbeitsverzeichnisses finden GetCurrentDirectorySie unter.To obtain the current working directory, see GetCurrentDirectory.

Wenn Sie versuchen, eine Datei auf Datenträgervolumes zu verschieben, und diese Datei verwendet wird, wird die Datei in das Ziel kopiert, jedoch nicht aus der Quelle gelöscht.If you try to move a file across disk volumes and that file is in use, the file is copied to the destination, but it is not deleted from the source.

Eine Liste der allgemeinen e/a-Aufgaben finden Sie unter Allgemeine e/a-Aufgaben.For a list of common I/O tasks, see Common I/O Tasks.

Sicherheit

FileIOPermission
zum Lesen von sourceFileName und Schreiben in destFileName.for reading from sourceFileName and writing to destFileName. Zugehörige Enumerationen Read:,WriteAssociated enumerations: Read, Write

Siehe auch

Gilt für: