Directory.Move(String, String) Directory.Move(String, String) Directory.Move(String, String) Directory.Move(String, String) Method

Definición

Mueve un archivo o directorio y su contenido a una nueva ubicación.Moves a file or a directory and its contents to a new location.

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

Parámetros

sourceDirName
String String String String

Ruta de acceso del archivo o del directorio que se va a mover.The path of the file or directory to move.

destDirName
String String String String

Ruta de acceso a la nueva ubicación para sourceDirName.The path to the new location for sourceDirName. Si sourceDirName es un archivo, destDirName debe ser también un nombre de archivo.If sourceDirName is a file, then destDirName must also be a file name.

Excepciones

Se ha intentado mover un directorio a otro volumen.An attempt was made to move a directory to a different volume.

o bien-or- destDirName ya existe.destDirName already exists. Consulte la Nota en la sección Comentarios.See the Note in the Remarks section.

O bien-or- Los parámetros sourceDirName y destDirName hacen referencia al mismo archivo o directorio.The sourceDirName and destDirName parameters refer to the same file or directory.

O bien-or- El directorio o un archivo que se está siendo usando por otro proceso.The directory or a file within it is being used by another process.

El llamador no dispone del permiso requerido.The caller does not have the required permission.

sourceDirName o destDirName es una cadena de longitud cero que solo contiene espacios en blanco o uno o varios caracteres no válidos.sourceDirName or destDirName is a zero-length string, contains only white space, or contains one or more invalid characters. Puede consultar los caracteres no válidos con el método GetInvalidPathChars().You can query for invalid characters with the GetInvalidPathChars() method.

sourceDirName o destDirName es null.sourceDirName or destDirName is null.

La ruta de acceso especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.The specified path, file name, or both exceed the system-defined maximum length.

La ruta de acceso especificada por sourceDirName no es válida (por ejemplo, está en una unidad no asignada).The path specified by sourceDirName is invalid (for example, it is on an unmapped drive).

Ejemplos

En el ejemplo siguiente se muestra cómo trasladar un directorio y todos sus archivos a un nuevo directorio.The following example demonstrates how to move a directory and all its files to a new directory. El directorio original ya no existe después de moverse.The original directory no longer exists after it has been moved.

using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string sourceDirectory = @"C:\source";
            string destinationDirectory = @"C:\destination";

            try
            {
                Directory.Move(sourceDirectory, destinationDirectory);  
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System.IO

Module Module1

    Sub Main()
        Dim sourceDirectory As String = "C:\source"
        Dim destinationDirectory As String = "C:\destination"

        Try
            Directory.Move(sourceDirectory, destinationDirectory)
        Catch e As Exception
            Console.WriteLine(e.Message)
        End Try

    End Sub

End Module

Comentarios

Este método crea un nuevo directorio con el nombre especificado por destDirName y mueve el contenido de sourceDirName al directorio de destino que se acaba de crear.This method creates a new directory with the name specified by destDirName and moves the contents of sourceDirName to the newly created destination directory. Si intenta trasladar un directorio a un directorio que ya existe, se producirá una excepción IOException .If you try to move a directory to a directory that already exists, an IOException will occur. Por ejemplo, se producirá una excepción si intenta pasar c:\MiDir a c:\Public y c:\Public ya existe.For example, an exception will occur if you try to move c:\mydir to c:\public, and c:\public already exists. Como alternativa, puede especificar "c:\\Public\\mydir" como destDirName parámetro, siempre que "myDir" no exista en "c:\\Public" o especifique un nuevo nombre de directorio como "c:\\newdir".Alternatively, you could specify "c:\\public\\mydir" as the destDirName parameter, provided that "mydir" does not exist under "c:\\public", or specify a new directory name such as "c:\\newdir".

Los sourceDirName argumentos destDirName y pueden especificar la información de ruta de acceso relativa o absoluta.The sourceDirName and destDirName arguments are permitted to specify relative or absolute path information. La información de la ruta de acceso relativa se interpreta en relación con el directorio de trabajo actual.Relative path information is interpreted as relative to the current working directory. Para obtener el directorio de trabajo actual, GetCurrentDirectoryvea.To obtain the current working directory, see GetCurrentDirectory.

Los espacios finales se quitan del final de los parámetros de ruta de acceso antes de mover el directorio.Trailing spaces are removed from the end of the path parameters before moving the directory.

Para obtener una lista de tareas de e/s comunes, consulte tareas comunes de e/s.For a list of common I/O tasks, see Common I/O Tasks.

Nota

A partir de .net Core 3,0, Move el método produce una IOException excepción destDirName en todas las plataformas cuando ya existe.Starting with .NET Core 3.0, the Move method throws an IOException in all platforms when the destDirName already exists. En .NET Core 2,2 y versiones anteriores, la excepción solo se produce en Windows y otras plataformas podrían producir errores o sobrescribir el destDirName.In .NET Core 2.2 and previous versions, the exception was only thrown on Windows, and other platforms could either fail or overwrite the destDirName. Vea C++ cambiar el nombre.See C++ rename.

Seguridad

FileIOPermission
para leer sourceDirName y escribir en sourceDirName y destDirName.for reading from sourceDirName and writing to sourceDirName and destDirName. Enumeraciones asociadas: Read,WriteAssociated enumerations: Read, Write

Se aplica a

Consulte también: