개발자 성장일지

Part BCL(Base Class Library) - 1 본문

인프런/C# 프로그래밍 기초

Part BCL(Base Class Library) - 1

hdigimon 2023. 12. 9. 22:14

System.String

 

System.String(실습)

더보기
namespace Chapter13_1
{
    internal class Exam13_1
    {
        public void Run()
        {
            string str = GetString();
            if(Find해묘미(str)) Console.WriteLine("해묘미 합입니다.");
            if(Find인오술(str)) Console.WriteLine("인오술 합입니다.");
        }

        private bool Find인오술(string str)
        {
            string[] Ios = new string[] { "인", "오", "술" };
            return Ios.All(s => str.Contains(s));	// 코드 요약

			// 교제에 나오는 예시
            //foreach(string s in Ios)
            //{
            //    if(str.IndexOf(s) < 0) return false;
            //}
            //return true;
        }

        //str은 6자를 가지고 있음
        //여기에 해, 묘, 미 세 글자라 포함되어 있으면 true를 반환, 그렇지 않으면 false를 반환
        private bool Find해묘미(string str)
        {
            if (str.Contains("해") && str.Contains("묘") && str.Contains("미"))
            {
                return true;
            }
            return false;
        }

        private string GetString()
        {
            while (true)
            {
                Console.WriteLine("6자 입력 : ");
                string str = Console.ReadLine();
                if (str.Length != 6)
                {
                    continue;
                }
                else
                {
                    return str;
                }
            }
        }
    }
}

 

System.IO Directory, File

더보기
namespace Chapter14_1
{
    internal class Exam14_1
    {
        public void Run()
        {
            // Directory. Directoryinfo
            TestDirectory();
        }

        private void TestDirectory()
        {
            //Console.WriteLine("Directory 입력 : ");
            //string root  = Console.ReadLine();
            //createDirectory(root);
            //ReadDirectory(root);
            //DeleteDirecory(root);
            //RenameDirectory(root);
            // CRUD => Create, Read, Update, Delete
            string fileSystem = "c:";
            string directory1 = "Windows";
            string root = fileSystem + "\\"+ directory1;
            ReadDirectory(root);
        }

        private void RenameDirectory(string root)
        {
            Directory.Move(root, "d:Wkjtet");
        }

        private void DeleteDirecory(string root)
        {
            try
            {
                if (Directory.Exists(root)) Directory.Delete(root);

            }
            catch(Exception ex) 
            {
                Console.WriteLine($"오류발생 : {ex.Message}");
                return; 
            }
        }

        private void createDirectory(string root)
        {
            if (!Directory.Exists(root))
            {
                Directory.CreateDirectory(root);
                return;
            }
        }

        private void ReadDirectory(string root)
        {
            if (Directory.Exists(root))
            {
                Console.WriteLine($"{root} Directory가 존재합니다");
                DirectoryInfo di = new DirectoryInfo(root);
                FileInfo[] files = di.GetFiles();
                foreach (FileInfo file in files)
                {
                    Console.WriteLine($"파일 : {file.FullName} {file.Extension}을 찾았습니다.");
                }
                string[] dirs = Directory.GetDirectories(root);
                foreach (string dir in dirs)
                {
                    Console.WriteLine($"디렉토리 : {dir}을 찾았습니다.");
                }
            }
            else
            {
                Console.WriteLine($" {root} Directory가 존재하지 않습니다.");
                Directory.CreateDirectory(root);
                return;
            }
        }
    }
}

'인프런 > C# 프로그래밍 기초' 카테고리의 다른 글

Part BCL(Base Class Library) - 2  (0) 2023.12.13
Part Delegate  (0) 2023.12.07
Part 제네릭, GENERICS  (0) 2023.12.06
Part 구조체  (1) 2023.12.05
Part 인터페이스 - 2  (0) 2023.12.04