1 Mayıs 2018 Salı

C Sharp Konsol Uygulamalar Telefon Rehberi ve Text Dökümanına Kayıt Ekleme

KONU : C Sharp Uygulamalar - C Sharp ( C# ) Konsol Uygulamaları Telefon rehberi uygulaması. C Sharp konsol ekranından personel ismi ve soyadını yazarak programa girme. Personelin telefon numarasını konsoldan girme. C sharp da girilen personel bilgilerini konsol ekranına yazdırma. Personel listesi telefon numarasına göre sıralama. Girilen Personel listesini personel ismine göre sıralama. C sharp while döngüsü kullanımı. C sharp if else örnekleri ve kullanımı.
ETİKETLER: c sharp konsol - c sharp streamreader - c sharp streamwriter - c sharp telefon rehberi

UYGULAMAYI İNDİR
 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace C_Sharp_Konsol_Telefon_Rehberi
{
    class Program
    {

       static string dosya = "TelefonRehberi.txt";

        static private void menu()
        {
            Console.WriteLine("======= Menu =======\n");
            Console.WriteLine("[1] isim listesi");
            Console.WriteLine("[2] yeni isim gir");
            Console.WriteLine("[3] cikis yap");
            Console.Write("\nSeciminiz: ");
        }

        static Dictionary < int, string > telefonRehberList = new Dictionary < int, string >();

        static private void dosyayiOku()
        {

            if (File.Exists(dosya))
            {
                string[] isimler = File.ReadAllLines(dosya);

                telefonRehberList.Clear();

                for (int i = 0; i < isimler.Length; i++)
                {
                    string[] satir = isimler[i].Split('-');

                    telefonRehberList.Add( int.Parse(satir[1].Trim()),satir[0].Trim());

                }
                var list = telefonRehberList.Keys.ToList();



                Console.WriteLine("\n--- isim listesi------------Tel---\n\n");

                var items = from pair in telefonRehberList
                            orderby pair.Key ascending
                            select pair;

                foreach (KeyValuePair pair in items)
                {

                    WriteAt(pair.Key.ToString(), Console.CursorLeft, Console.CursorTop);
                    WriteAt(pair.Value, 28, Console.CursorTop);

                    Console.WriteLine();
                }
            }
        }

        protected static void WriteAt(string yazi, int x, int y)
        {
            try
            {
                Console.SetCursorPosition(x,  y);

                Console.Write(yazi);
            }
            catch (ArgumentOutOfRangeException e)
            {
                Console.Clear();

                Console.WriteLine(e.Message);
            }
        }


        static private void dosyayaYaz(string yazilacakIsim, string yazilacakTelefon)
        {


            using (StreamWriter sw = new StreamWriter(dosya, true))
            {

                sw.WriteLine(yazilacakIsim + " - " + yazilacakTelefon);

                sw.Close();

            }


        }

        static void Main(string[] args)
        {
            char secim = '0';
            do
            {
                menu();
                try
                {
                    secim = Convert.ToChar(Console.ReadLine());
                    switch (secim)
                    {
                        case '1':
                            dosyayiOku();
                            break;
                        case '2':
                            string isim = "";
                            string telefon = "";


                            Console.WriteLine("İsim giriniz.");

                            isim = Console.ReadLine();

                            Console.WriteLine("Telefon Giriniz");

                            telefon = Console.ReadLine();


                            dosyayaYaz(isim, telefon);

                            break;
                        case '3':
                            break;
                        default:
                            Console.WriteLine("Yanlis secim yaptiniz!!!");
                            break;
                    }
                }
                catch (Exception)
                {
                     
                }
              
            } while (secim != '3');
        }
    }
}


 

UYGULAMAYI İNDİR

8 yorum :

  1. static Dictionary telefonRehberList = new Dictionary();
    satırında hata veriyor

    YanıtlaSil
    Yanıtlar
    1. using System.Collections.Generic;

      satırını uygulamana ekledin mi?

      Sil
    2. using System.Collections.Generic; eklememe rağmen bu hatayı yine veriyor.

      Sil
    3. Programındaki bütün "Static" leri silip bir dene. Hata mesajını da yazarsan daha kolay yardımcı olabilirim

      Sil
  2. Sorunu yani hata mesajını yazın ona göre inceleyeyim. Uygulamayı indirip çalıştırıyorum bende hiç bir sorun yok. Siz uygulamayı form uygulamada mı çalıştıyorsunuz?

    YanıtlaSil
    Yanıtlar
    1. aynı hata bendede veriyor , Console app de çalıştırıyorum birde

      Sil
    2. Şimdi sorunu anladım. dictionary sınıfı 2 tip argüman olması gerekiyor: < int, string > . Ama sayfa içine kopyala yağıştır yapınca bu argümanları tag zannettiği için sayfada görünmüyormuş. Şimdi aralarına boşluk koyarak güncelledim ve sayfada görünüyor. Teşekkürler geri dönüş için :)

      Sil