C# Console Dersleri Ders-11 “Kütüphane Otomasyonu Projesi”
Derslerimize küçük bir ara verip bugüne kadar öğrendiklerimizi kullanarak bir otomasyon proje yapalım.
Bir menü ile başlayalım o zaman.
1 2 3 4 5 6 7 8 9 10 |
string giris; while (1==1) { Console.Clear(); Console.WriteLine("\t\t\t\t\t1--->Kitap ekle"); Console.WriteLine("\t\t\t\t\t2--->Kitapları Goruntule"); Console.WriteLine("\t\t\t\t\t3--->Odunc verilen Kitaplar Listesi"); Console.WriteLine("\t\t\t\t\t4--->Odunc Kitap Ver"); Console.WriteLine("\t\t\t\t\t5--->Cıkıs"); giris = Console.ReadLine(); |
Kullanıcı çıkmak istemediği sürece sonsuza kadar tekrar edecek bir while döngüsü ile menümüzü yaptık.
Daha sonra yeni bir sınıf oluşturalım ve menü de ki seçeneklerin içini doldurmaya başlayalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
public void kitap_ekle(string kitap_ismi) { FileStream fs = new FileStream("kitap_listesi.txt", FileMode.Append, FileAccess.Write); StreamWriter sw = new StreamWriter(fs); sw.WriteLine(kitap_ismi); sw.Close(); } public void kitap_goruntule() { FileStream fs = new FileStream("kitap_listesi.txt", FileMode.OpenOrCreate, FileAccess.Read); StreamReader sr = new StreamReader(fs); string yazi = sr.ReadLine(); while (yazi != null) { Console.WriteLine(yazi); yazi = sr.ReadLine(); } sr.Close(); } public void odunc_kitap_listesi() { FileStream fs = new FileStream("odunc_listesi.txt", FileMode.OpenOrCreate, FileAccess.Read); StreamReader sr = new StreamReader(fs); string yazi = sr.ReadLine(); while (yazi != null) { Console.WriteLine(yazi); yazi = sr.ReadLine(); } sr.Close(); } public void odunc_kitap(string kitap_ismi) { Boolean bulunma = false; FileStream f1 = new FileStream("kitap_listesi.txt", FileMode.OpenOrCreate, FileAccess.Read); FileStream fs = new FileStream("odunc_listesi.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamReader kutuphane = new StreamReader(f1); StreamWriter odunc_yaz = new StreamWriter(fs); Console.WriteLine("******Kutuphanede bulunan kitaplar***** \n"); string yazi2 = kutuphane.ReadLine(); while (yazi2 != null) { Console.WriteLine("*"+yazi2); if (kitap_ismi == yazi2) { odunc_yaz.WriteLine(yazi2); bulunma = true; } yazi2 = kutuphane.ReadLine(); } kutuphane.Close(); if (bulunma == true) Console.WriteLine("Kitap bulundu ve odunc verildi."); else Console.WriteLine("Kitap bulunamadı listede bulunan bir kitap giriniz!!!"); } |
Henüz veri tabanı ile ilgili bir şey öğrenmediğimiz için verilerimizi bir önceki dersimizde öğrendiğimiz “txt” dosyasında tuttum.Daha sonra main bloğu içine yazdığımız seçenekler için bir if-else yapısı oluşturalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
Class1 ktp = new Class1(); string giris; while (1==1) { Console.Clear(); Console.WriteLine("\t\t\t\t\t1--->Kitap ekle"); Console.WriteLine("\t\t\t\t\t2--->Kitapları Goruntule"); Console.WriteLine("\t\t\t\t\t3--->Odunc verilen Kitaplar Listesi"); Console.WriteLine("\t\t\t\t\t4--->Odunc Kitap Ver"); Console.WriteLine("\t\t\t\t\t5--->Cıkıs"); giris = Console.ReadLine(); if (giris == "1") { Console.Clear(); Console.WriteLine("Lufen eklenecek kitap ismi giriniz"); string isim = Console.ReadLine(); ktp.kitap_ekle(isim); Console.ReadKey(); } else if (giris == "2") { Console.Clear(); Console.WriteLine("Mevcut kitap listesi:"); ktp.kitap_goruntule(); Console.ReadKey(); } else if(giris=="3") { Console.Clear(); Console.WriteLine("Odunc verilen kitaplar listesi:"); ktp.odunc_kitap_listesi(); Console.ReadKey(); } else if (giris == "4") { Console.Clear(); ktp.kitap_goruntule(); Console.WriteLine("Odunc verilecek kitap ismi giriniz:"); string odunc = Console.ReadLine(); ktp.odunc_kitap(odunc); Console.ReadKey(); } else if (giris == "5") { Environment.Exit(0); } else Console.WriteLine("Yanlıs deger girildi tekrar giris yapınız"); } } |
Buradaki “ktp” isimli nesne sınıfımızdan oluşturduğumuz nesne. Her adımdan sonra da “Console.Clear()” komutu ile ekranı temizledik.
Öğrendiğimiz bilgiler biriktikçe ara ara böyle projeler ile öğrendiğimiz şeyleri tekrar edeceğiz.Gelecek dersimizde sınıf yapıları ile devam edeceğiz. İyi günler diliyorum.