C# 'da Advanced File/Folder Properties Sistem Kodlari
- Sevdanur GENC

- Jun 7, 2012
- 4 min read
Makale iceriginde Visual Studio'nun sistem komutlarinin yardimi ile C# dili kullanarak daha onceden olusturdugumuz dosyalar uzerinde kopyalama, kesme, yapistirma, tasima islemlerini yapiyor olabilecegiz. Ayni zamanda yapacagim uygulamada tum bu ozellikleri gerceklestirirken arti bir ozellik olarak da dosyamizin ozellikleri kisminda ki bilgileri de yine sistem komutlarimizla cekiyor olacagiz.
Olusturdugum uygulamanin ekran goruntusu asagidadir, peki uygulama adim adim ne isler gerceklestiriyor onlari inceleyelim. Ardindan kodlarini olusturmaya baslayabilirsiniz...
Uygulamanin amaci ;
Dosya kopyalama secenegi secildigi zaman, hedef dizinimizde ki dosyayi openFileDialog nesnesinin yardimi ile alip, yine folderBrowserDialog nesnesinin yardimi ile kaynak dizinimizi belirtiyor ve islemi baslatabilmek icin butona tikliyoruz.
Dosya sil secenegi secildigi zaman, silinecek dosyayi secebilmemiz icin openFileDialog nesnesi yardimi ile dosyamizi seciyor ve islemi baslattigimiz zaman belirttigimiz yerdeki dosyayi sistemden silmis oluyoruz.
Dosya tasi secenegi secildigi zaman, hedef dizinimizde ki dosyayi openFileDialog nesnesinin yardimi ile alip, yine folderBrowserDialog nesnesinin yardimi ile kaynak dizinimizi belirtiyor ve islemi baslatabilmek icin butona tikliyoruz.
Dosya erisim secenegi secildigi zaman, Gozat butonu tiklanildiginda karsimiza cikan folderBrowserDialog nesnesi ile sececegimiz dosyanin tum bilgilerini sistem komutlari sayesinde asagida ki listbox'a yazdirmis oluyoruz.
Uygulama icin yapacaginiz orneklerinizde kok dizin altinda iki adet, hedefdizin ve kaynakdizin adinda klasor olusturabilirsiniz. Asagida folderBrowserDialog penceresinden de olusturmus oldugunuz dizinlerinizi gorebilirsiniz.
Uygulamanin Kaynak Kodlari ;
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace DosyaSistemleri { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public string DosyaninIsmi; public string KaynakDizinYolu; public string HedefDizinYolu; private void button1_Click(object sender, EventArgs e) { openFileDialog1.Title = "Lütfen Dozya Seçiniz"; openFileDialog1.Filter = " (*.txt) | *.txt"; openFileDialog1.InitialDirectory = "C:\\"; openFileDialog1.ShowDialog(); foreach (string DosyaYolunuYazdir in openFileDialog1.FileNames) { textBox1.Text = DosyaYolunuYazdir; KaynakDizinYolu = Path.GetDirectoryName(DosyaYolunuYazdir); } DosyaninIsmi = openFileDialog1.SafeFileName; } private void button2_Click(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) { textBox2.Text = folderBrowserDialog1.SelectedPath; HedefDizinYolu = textBox2.Text; } } private void button4_Click(object sender, EventArgs e) { openFileDialog1.Title = "Lütfen Dozya Seçiniz"; openFileDialog1.Filter = " (*.txt) | *.txt"; openFileDialog1.InitialDirectory = "C:\\"; openFileDialog1.ShowDialog(); foreach (string DosyaYolunuYazdir in openFileDialog1.FileNames) { textBox3.Text = DosyaYolunuYazdir; KaynakDizinYolu = Path.GetDirectoryName(DosyaYolunuYazdir); } DosyaninIsmi = openFileDialog1.SafeFileName; } private void button6_Click(object sender, EventArgs e) { openFileDialog1.Title = "Lütfen Dozya Seçiniz"; openFileDialog1.Filter = " (*.txt) | *.txt"; openFileDialog1.InitialDirectory = "C:\\"; openFileDialog1.ShowDialog(); foreach (string DosyaYolunuYazdir in openFileDialog1.FileNames) { textBox4.Text = DosyaYolunuYazdir; KaynakDizinYolu = Path.GetDirectoryName(DosyaYolunuYazdir); } DosyaninIsmi = openFileDialog1.SafeFileName; } private void button8_Click(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) { textBox5.Text = folderBrowserDialog1.SelectedPath; HedefDizinYolu = textBox5.Text; } } private void button3_Click(object sender, EventArgs e) { try { string fileName = DosyaninIsmi; string sourcePath = KaynakDizinYolu; string targetPath = HedefDizinYolu; string sourceFile = System.IO.Path.Combine(sourcePath, fileName); string destFile = System.IO.Path.Combine(targetPath, fileName); if (!System.IO.Directory.Exists(targetPath)) { System.IO.Directory.CreateDirectory(targetPath); } System.IO.File.Copy(sourceFile, destFile, true); if (System.IO.Directory.Exists(sourcePath)) { string[] files = System.IO.Directory.GetFiles(sourcePath); foreach (string s in files) { fileName = System.IO.Path.GetFileName(s); destFile = System.IO.Path.Combine(targetPath, fileName); System.IO.File.Copy(s, destFile, true); } } else { label3.Text = "Durum ; Kaynak Dosya Yolu Bulunamadi..."; } label3.Text = "Durum ; Dosya Kopyalama Islemi Basariyla Sonlandi..."; } catch (System.IO.IOException ee) { Console.WriteLine(ee.Message); return; } } private void button5_Click(object sender, EventArgs e) { if (System.IO.File.Exists(@textBox3.Text)); { try { System.IO.File.Delete(@textBox3.Text); label8.Text = "Durum ; Dosya Silme Islemi Basariyla Sonlandi..."; } catch (System.IO.IOException ee) { Console.WriteLine(ee.Message); return; } } } private void button7_Click(object sender, EventArgs e) { try { string sourceFile = @textBox4.Text; string destinationFile = @HedefDizinYolu + "\\" + DosyaninIsmi; System.IO.File.Move(sourceFile, destinationFile); label6.Text = "Durum ; Dosya Tasima Islemi Basariyla Sonlandi..."; } catch (System.IO.IOException ee) { Console.WriteLine(ee.Message); return; } } private void button9_Click(object sender, EventArgs e) { openFileDialog1.Title = "Lütfen Dozya Seçiniz"; openFileDialog1.Filter = " (*.*) | *.*"; openFileDialog1.InitialDirectory = "C:\\"; openFileDialog1.ShowDialog(); foreach (string DosyaYolunuYazdir in openFileDialog1.FileNames) { textBox6.Text = DosyaYolunuYazdir; KaynakDizinYolu = Path.GetDirectoryName(DosyaYolunuYazdir); } DosyaninIsmi = openFileDialog1.SafeFileName; } private void button10_Click(object sender, EventArgs e) { label10.Text = "Durum ; " + DosyaninIsmi + " Dosyasinin Tum Bilgileri Asagida Listelenmektedir ..."; listBox1.Items.Clear(); listBox1.Items.Add("Secilen ; " + DosyaninIsmi + " Tum Bilgileri Asagidadir ..."); listBox1.Items.Add(""); FileInfo info = new FileInfo(KaynakDizinYolu + "\\" + DosyaninIsmi); FileAttributes attributes = info.Attributes; listBox1.Items.Add("Dosyanin Ozellikleri ; " + attributes); listBox1.Items.Add(""); DateTime time = info.CreationTime; listBox1.Items.Add("Olusturuldugu Zaman ; " + time); time = info.LastAccessTime; listBox1.Items.Add("En Son Erisildigi Zaman ; " + time); time = info.LastWriteTime; listBox1.Items.Add("En Son Kaydedildigi Zaman ; " + time); listBox1.Items.Add(""); DirectoryInfo dir = info.Directory; listBox1.Items.Add("Dizinin Adi ; " + dir.Name); string name = info.DirectoryName; listBox1.Items.Add("Dizinin Yolu ; " + name); listBox1.Items.Add(""); long value = info.Length; listBox1.Items.Add("Boyutu ; " + value + " Byte'dir."); listBox1.Items.Add(""); } private void radioButton1_CheckedChanged(object sender, EventArgs e) { groupBox2.Enabled = true; groupBox3.Enabled = false; groupBox4.Enabled = false; groupBox5.Enabled = false; } private void Form1_Load(object sender, EventArgs e) { groupBox2.Enabled = false; groupBox3.Enabled = false; groupBox4.Enabled = false; groupBox5.Enabled = false; } private void radioButton2_CheckedChanged(object sender, EventArgs e) { groupBox2.Enabled = false; groupBox3.Enabled = true; groupBox4.Enabled = false; groupBox5.Enabled = false; } private void radioButton3_CheckedChanged(object sender, EventArgs e) { groupBox2.Enabled = false; groupBox3.Enabled = false; groupBox4.Enabled = true; groupBox5.Enabled = false; } private void radioButton4_CheckedChanged(object sender, EventArgs e) { groupBox2.Enabled = false; groupBox3.Enabled = false; groupBox4.Enabled = false; groupBox5.Enabled = true; } } } Keyifli Calismalar Dilerim...
Comments