//************************************Main Form kodları using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using System.Collections; namespace WindowsFormsApp2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { dosyaislem ds = new dosyaislem(); ds.DosyaOlustur(); List liste = new List(); liste = ds.ListeOlusturEkle(); foreach (string item in liste) { listBox1.Items.Add(item); } } private void button1_Click(object sender, EventArgs e) { dosyaislem ds = new dosyaislem(); ds.KisiYaz(textBox1.Text); List liste = new List(); string sonsatir = ds.ListeUpdate(); listBox1.Items.Add(sonsatir); } private void label1_Click(object sender, EventArgs e) { } //Alan buglu düzeltilecek ######################## private void button3_Click(object sender, EventArgs e) { dosyaislem ds = new dosyaislem(); ds.ListeTemizle(); listBox1.Items.Clear(); listBox2.Items.Clear(); } private void button2_Click(object sender, EventArgs e) { dosyaislem ds = new dosyaislem(); List liste = new List(); List updateListe = new List(); List liste2 = new List(); int kisiSayi=1; int kisiSayi2 = 0; liste = ds.KisiCek(numericUpDown1.Value); foreach (string item in liste) { listBox2.Items.Add("Kişi "+kisiSayi+": "+item); kisiSayi++; } liste2 = ds.kisiHesaplaCagir(); foreach (var item in liste2) { kisiSayi2++; } if (kisiSayi == 1) { MessageBox.Show("Çekmek İstediğiniz kişi sayısı 0 değerinde yada listede çekmek istediğiniz kadar kişi yok! Listedeki kişi sayısı: "+kisiSayi2); } } } } //************************************dosyaislem.cs kodlar using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using System.Collections; namespace WindowsFormsApp2 { class dosyaislem { public void DosyaOlustur() { if(!File.Exists("kisi.txt")) { FileStream fs = new FileStream("kisi.txt", FileMode.OpenOrCreate); StreamWriter sw = new StreamWriter(fs); sw.Close(); fs.Close(); } } public List ListeOlusturEkle() { DosyaOlustur(); StreamReader streamReader = new StreamReader("kisi.txt", Encoding.UTF8); List liste = new List(); while (!streamReader.EndOfStream) { string deger = streamReader.ReadLine(); liste.Add(deger); } streamReader.Close(); return liste; } public string ListeUpdate() { DosyaOlustur(); StreamReader streamReader = new StreamReader("kisi.txt", Encoding.UTF8); List liste = new List(); while (!streamReader.EndOfStream) { string deger = streamReader.ReadLine(); liste.Add(deger); } streamReader.Close(); string sonsatir = "null"; for (int i = 0; i < liste.Count; i++) { if (i == liste.Count-1) { sonsatir = liste[i]; liste.Clear(); } } return sonsatir; } public void KisiYaz(string isim) { List liste = new List(); liste = ListeOlusturEkle(); StreamWriter streamWriter = new StreamWriter("kisi.txt"); foreach (string item in liste) { streamWriter.WriteLine(item); } streamWriter.WriteLine(isim); streamWriter.Close(); } //BU ALAN BUGLU DÜZELTİLECEK ################################################################################################################## public void ListeTemizle() { if (File.Exists("kisi.txt")) { File.Delete("kisi.txt"); } } public List kisiHesaplaCagir() { StreamReader streamReader = new StreamReader("kisi.txt",Encoding.UTF8); List liste = new List(); while (!streamReader.EndOfStream) { liste.Add(streamReader.ReadLine()); } streamReader.Close(); return liste; } public List KisiCek(decimal sayi) { StreamReader streamReader = new StreamReader("kisi.txt",Encoding.UTF8); List liste = new List(); List KisilerListe = new List(); List sayiLar = new List(); Random rand = new Random(); int satirsayi = 0; int durumint=0; Boolean anaDurum = false; while (!streamReader.EndOfStream) { satirsayi++; liste.Add(streamReader.ReadLine()); } streamReader.Close(); foreach (var item in liste) { durumint++; } if(durumint < sayi) { anaDurum = true; } if (!anaDurum) { for (int i = 0; i < sayi; i++) { int randomSayi; int eklenen = 0; Boolean durum; randomSayi = rand.Next(0, liste.Count); foreach (var item in sayiLar) { if (randomSayi == item) { sayi--; durum = false; } } if (durum = true) { sayiLar.Add(randomSayi); durum = false; } } foreach (var item in sayiLar) { KisilerListe.Add(liste[item]); } } List sonListe = new List(); int kisilerListeuzunluk=0; sonListe = kisiHesaplaCagir(); foreach (var item in KisilerListe) { kisilerListeuzunluk++; } for (int i = 0; i < sonListe.Count; i++) { for (int z = 0; z < kisilerListeuzunluk; z++) { if (KisilerListe[z] == sonListe[i]) { string deger; deger = sonListe[i]; sonListe.Remove(deger); } } } ListeTemizle(); StreamWriter streamWriter = new StreamWriter("kisi.txt"); foreach (string item in sonListe) { streamWriter.WriteLine(item); } streamWriter.Close(); return KisilerListe; } } }