Uygulama içerisinde kaynak ve hedef klasörler seçilir. Ardından kopyalanacak dosya türleri ve kaynak dosyaların silinip silinmeyeceği seçilir. Bu parametrelerle kopyalama işlemi gerçekleştirilir.
Not: Uygulamada herhangi bir hata denetimi yapılmadığından koruma altındaki dosyalar kopyalanmak istendiğinde uygulama hata verebilir.
Kaynak Seç isimli butona ait kodlar
folderBrowserDialog1.ShowDialog(); textBox1.Text = folderBrowserDialog1.SelectedPath;
Hedef Seç isimli butona ait kodlar
folderBrowserDialog1.ShowDialog(); textBox2.Text = folderBrowserDialog1.SelectedPath;
Kopyala isimli butona ait kodlar
progressBar1.Minimum = 0; String[ ] dosyalar = Directory.GetFiles(textBox1.Text, "*.*", SearchOption.AllDirectories); progressBar1.Maximum = dosyalar.Length; //dosyaları kopyalıyoruz. for (int i = 0; i < dosyalar.Length; i++) { if (radioButton2.Checked) { if (Path.GetExtension(dosyalar[i]) == ".jpg") { String dosyaadi = Path.GetFileName(dosyalar[i]);//dosyanın dizin hariç adını getir File.Copy(dosyalar[i], textBox2.Text + "\\" + dosyaadi);//dosyayı hedef dizine kopyala } } if (radioButton1.Checked) { if (Path.GetExtension(dosyalar[i]) == ".exe") { String dosyaadi = Path.GetFileName(dosyalar[i]);//dosyanın dizin hariç adını getir File.Copy(dosyalar[i], textBox2.Text + "\\" + dosyaadi);//dosyayı hedef dizine kopyala } } if (radioButton3.Checked) { if (Path.GetExtension(dosyalar[i]) == ".png") { String dosyaadi = Path.GetFileName(dosyalar[i]);//dosyanın dizin hariç adını getir File.Copy(dosyalar[i], textBox2.Text + "\\" + dosyaadi);//dosyayı hedef dizine kopyala } } if (radioButton4.Checked) { String dosyaadi = Path.GetFileName(dosyalar[i]);//dosyanın dizin hariç adını getir File.Copy(dosyalar[i], textBox2.Text + "\\" + dosyaadi);//dosyayı hedef dizine kopyala } if(checkBox1.Checked)//kaynak dosya silinsin seçeneği işaretli mi { File.Delete(dosyalar[i]);//işaretliyse dosyayı sil } progressBar1.Value = i+1;//progressbar ın ilerlemesini sağla }
Örnek Uygulama