17 Aralık 2014 Çarşamba

C# Dosya Kopyalama Kodları

using System;
using System.Collections.Generic;
using System.IO;

public class Directories
{
    public static void CopyDirectory(string SourceFolderPath, string TargetFolderPath)
    {
        String[] files;



        if (TargetFolderPath[TargetFolderPath.Length - 1] != Path.DirectorySeparatorChar)
        {
            TargetFolderPath += Path.DirectorySeparatorChar;
        }

        // parametre olarak verilen hedef dizin yok ise oluştur.
        if (!Directory.Exists(TargetFolderPath))
        {
            Directory.CreateDirectory(TargetFolderPath);
        }

        // kaynak dizindeki tüm alt dizin ve dosya adlarını al.
        files = Directory.GetFileSystemEntries(SourceFolderPath);

        foreach (string file in files)
        {
            // alt dizinler
            if (Directory.Exists(file))
            {
                // metot öz yineleme (recursive) kullanarak kaynak dizinde dosya bulunduğu
                // müddetçe dizindeki tüm dosyalar hedef dizine kopyalanmaya devam ediyor.
                CopyDirectory(file, TargetFolderPath + Path.GetFileName(file));
            }

            // dizindeki dosyalar
            else
            {
                File.Copy(file, TargetFolderPath + Path.GetFileName(file), true);
            }
        }
    }
}

Directories.CopyDirectory(@"C:\kopyalanacak_dizin_yolu", @"C:\hedef_dizin_yolu");

“\” karakteri “String” ifadeler içinde özel karakter olarak algılandığından, dizin konumları parametrelerinin hemen önündeki “@” karakterini dosya yolundaki ters bölü(\) işareti özel karakter olarak algılanmasın diye ekliyoruz.
Paylaş:

0 yorum:

Yorum Gönder

Popüler

Son

Kategoriler

Arşiv