.NET 4.x Как можно укоротить код ? - C#

Узнай цену своей работы

Формулировка задачи:

Написал код после прочтение обучающих статей.. знаю что не все идеально .. все с начинали с ошибок )
 public class Rrand
    {
       public static Random Rand = new Random();
    }
    class Info
    {
        Random Rand = new Random();
 
         static int i = 0;
        const string pach_MenName=("Fille/Name_Men.txt");
        const string pach_WomenName = ("Fille/Name_Women.txt");
        const string pach_Famely = ("Fille/Famely.txt");
        const string pach_Error = ("Fille/Error.txt");
        const string pach_Finali = ("Fille/Finaly.txt");
        const string pach_PasLogin = ("Fille/PasLogin.txt");
        protected internal void FileInf()
        {
            try
            {
                if (!Directory.Exists("Fille"))
                {
                    Directory.CreateDirectory("Fille");
                    Console.WriteLine("Будут созданые INF.TXT");
                    i++;
                }
                    if (!File.Exists(pach_MenName))
                    using (File.Create(pach_MenName))
                if (!File.Exists(pach_WomenName))
                    using (File.Create(pach_WomenName))
                if (!File.Exists(pach_Famely))
                    using (File.Create(pach_Famely))
                if (!File.Exists(pach_Error))
                    using (File.Create(pach_Error))
                if (!File.Exists(pach_Finali))
                    using (File.Create(pach_Finali))
                if (!File.Exists(pach_PasLogin))
                    using (File.Create(pach_PasLogin))
                if (i == 1)
                {
                    Console.WriteLine("Заполните INF.TXT\nНажмите Enter для завершения программы..");
                    Console.ReadKey();
                    Environment.Exit(0);
                }
            }
            catch
            {
                Console.WriteLine("Error : нет INF.TXT \nНажмите Enter для завершения программы..");
                Console.ReadKey();
                Environment.Exit(0);
            }
        }
        
        protected internal void ReadrInfo(string Who)
        {
            string Name;
            string Famely;
            string PasPoshta;
            string LoginPoshta;
            string User_Name;
 
            switch (Who) //switch (Man/Woman)
            {
                case ("Man"):
            StreamReader readrMenName = new StreamReader(pach_MenName, UnicodeEncoding.UTF8);
            string str_Men = readrMenName.ReadToEnd();
            readrMenName.Close();
            string[] array_MenName = str_Men.Split('\n');
                    Name = array_MenName[Rand.Next(0, array_MenName.Length)];
                   
                    break;
 
                case ("Woman"):
            StreamReader readrWomenName = new StreamReader(pach_WomenName, UnicodeEncoding.UTF8);
            string str_Women = readrWomenName.ReadToEnd();
            readrWomenName.Close();
            string[] array_WomenName = str_Women.Split('\n');
                    Name = array_WomenName[Rand.Next(0, array_WomenName.Length)];
                    break;
        }
            //Famely
            StreamReader readrFamely = new StreamReader(pach_Famely, UnicodeEncoding.UTF8);
            string str_Famely = readrFamely.ReadToEnd();
            readrFamely.Close();
            string[] array_Famely = str_Famely.Split('\n');
            Famely = array_Famely[Rand.Next(0, array_Famely.Length)];
            //PasLog Poshta
            StreamReader readrPasLogin = new StreamReader(pach_PasLogin, UnicodeEncoding.UTF8);
            string str_PasLogin = readrPasLogin.ReadToEnd();
            readrPasLogin.Close();
            string[] array_PasLogin = str_PasLogin.Split('\n');
            int PL = array_PasLogin.Length;
            int IndexArray = 1;
            string PasLogin = array_PasLogin[0];
            string[] PasLog = PasLogin.Split(':');
            LoginPoshta = PasLog[0];
            PasPoshta = PasLog[1];
            User_Name = PasLog[0].Replace("@yahoo.com", "");
            for (int i = 0; i< array_PasLogin.Length-1;i++)
            {
                
                    array_PasLogin[i] = array_PasLogin[IndexArray];
                IndexArray++;
            }
            File.WriteAllLines(pach_PasLogin,array_PasLogin,Encoding.Default);
 
        }
    }

Решение задачи: «.NET 4.x Как можно укоротить код ?»

textual
Листинг программы
 string[] array_WomenName =  File.ReadAllLines(pach_WomenName, Encoding.UTF8);

Оцени полезность:

15   голосов , оценка 3.867 из 5
Похожие ответы