C# İle Dizin İçerisindeki Belli Tip Dosyaları Listeleme
Visual C# ile istediğimiz bir dizin içerisindeki tüm dosyaları listelemek ve istersek sadece belli tipteki ki dosyaları listelemek için aşağıdaki kodları kullanabiliriz. Aşağıdaki kodda sadece txt uzantılı dosyalar listelenecek ve eğer istersek bu txt dosyalarını okuyup form üzerindeki bir text kutusuna yazdıracağız.
Kodun çalışması için bir windows Form uygulamasına ve bu form içinde bir butona ihtiyacınız var.
Dosya isimlerini yazdırmak için 1. button kontrolünün içine alttaki kodları ekliyoruz.
txtParagraphs.Text = ""; FolderBrowserDialog dialog = new FolderBrowserDialog(); dialog.ShowDialog(); string sourceDir = dialog.SelectedPath; string[] sourcefiles = Directory.GetFiles(sourceDir); string sourcefile; for (int i = 0; i < sourcefiles.Length; i++) { sourcefile = sourcefiles[i]; FileInfo info = new FileInfo(sourcefile); string uzanti = info.Extension; //Dosya Uzantısını alıyoruz. if (uzanti == ".txt")//sadece txt uzantılı dosyaları alıyoruz. { //Sadece dosya isimlerini yazdırmak için kullanılır try { txtParagraphs.Text = txtParagraphs.Text + ("\nDosya Adı : " + sourcefile + "\n"); } catch (IOException) { } }
txt uzantılı dosyaların içeriğini görüntülemek içinse 2 button kontrolüne alttaki kodları yazmalıyız.
txtParagraphs.Text = ""; FolderBrowserDialog dialog = new FolderBrowserDialog(); dialog.ShowDialog(); string sourceDir = dialog.SelectedPath; string[] sourcefiles = Directory.GetFiles(sourceDir); string sourcefile; for (int i = 0; i < sourcefiles.Length; i++) { sourcefile = sourcefiles[i]; FileInfo info = new FileInfo(sourcefile); string uzanti = info.Extension; //Dosya Uzantısını alıyoruz. if (uzanti == ".txt")//sadece txt uzantılı dosyaları alıyoruz. { txtParagraphs.Text = txtParagraphs.Text + ("\nDosya Adı : " + sourcefile + "\n"); //Sadece dosya isimlerini yazdırmak için kullanılır try { string text = File.ReadAllText(sourcefile, Encoding.GetEncoding(1254)); txtParagraphs.Text = txtParagraphs.Text + "\n" + text; //txt dosya içeriklerini formdaki metin kutusuna eklemek için kullanılır. } catch (IOException) { } } }
using System.IO;
Kodun doğru çalışması için System.IO kütüphanesini eklemeyi unutmayın.