Aracılığıyla paylaş


Directory.Move(String, String) Yöntem

Tanım

Bir dosyayı veya dizini ve içeriğini yeni bir konuma taşır.

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)

Parametreler

sourceDirName
String

Taşınacak dosyanın veya dizinin yolu.

destDirName
String

veya içeriğinin yeni konumunun sourceDirName yolu. Bir dosyaysa sourceDirName , destDirName dosya adı da olmalıdır.

Özel durumlar

Bir dizini farklı bir birime taşıma girişiminde bulunuldu.

-veya-

destDirName zaten var. Açıklamalar bölümündeki nota bakın.

-veya-

sourceDirName ve destDirName parametreleri aynı dosyaya veya dizine başvurur.

-veya-

Dizin veya içindeki bir dosya başka bir işlem tarafından kullanılıyor.

Çağıranın gerekli izni yok.

2.1'den eski .NET Framework ve .NET Core sürümleri: sourceDirName veya destDirName sıfır uzunluklu bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir. yöntemiyle GetInvalidPathChars() geçersiz karakterleri sorgulayabilirsiniz.

sourceDirName veya destDirNamenull.

Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.

tarafından sourceDirName belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Örnekler

Aşağıdaki örnekte, bir dizinin ve tüm dosyalarının yeni bir dizine nasıl taşınacakları gösterilmektedir. Özgün dizin taşındıktan sonra artık yok.

using System;
using System.IO;

partial class Program
{
    static void DirectoryMoveExample()
    {
        string sourceDirectory = @"C:\source";
        string destinationDirectory = @"C:\destination";

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

let sourceDirectory = @"C:\source"
let destinationDirectory = @"C:\destination"

try
    Directory.Move(sourceDirectory, destinationDirectory)
with e ->
    printfn $"{e.Message}"
Imports System.IO

Partial Class Program
    Shared Sub DirectoryMoveExample()

        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 Class

Açıklamalar

Bu yöntem, tarafından destDirName belirtilen ada sahip yeni bir dizin oluşturur ve dosyaları ve dizinleri de içeren içeriğini sourceDirNameyeni oluşturulan hedef dizine taşır. Ardından dizini siler sourceDirName .

Bir dizini zaten var olan bir dizine taşımaya çalışırsanız, bir IOException gerçekleşir.

sourceDirName ve destDirName bağımsız değişkenlerinin göreli veya mutlak yol bilgilerini belirtmesine izin verilir. Göreli yol bilgileri geçerli çalışma dizinine göre yorumlanır. Geçerli çalışma dizinini edinmek için bkz GetCurrentDirectory. .

Dizin taşınmadan önce yol parametrelerinin sonundan sondaki boşluklar kaldırılır.

Yaygın G/Ç görevlerinin listesi için bkz. Ortak G/Ç Görevleri.

Uyarı

.NET Core 3.0'dan başlayarak, Move yöntemi zaten mevcut olduğunda destDirName tüm platformlarda bir IOException oluşturur. Bkz. C++ yeniden adlandırma.

Şunlara uygulanır

Ayrıca bkz.