c#/기타

[c#] directoryinfo 경로, 폴더, 파일

byH 2021. 12. 16. 15:19
728x90
반응형

1. directoryinfo 정의

 string path = @"C:\Temp";
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);

DirectoryInfo 를 선택하고 F12을 누르면 다음과 같이 사용할 수 있는 목록을 볼 수 있다. 

 

1. 존재하는지 체크 

 private void button1_Click(object sender, EventArgs e)
        {
           string path = @"C:\Temp\test";
            System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);

            bool existdr = di.Exists;
            richTextBox1.AppendText(existdr.ToString());
        }

2. 경로 생성 

string path = @"C:\Temp\test";
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);
 di.Create();

 

3. 하부 폴더 조회

  private void button1_Click(object sender, EventArgs e)
        {
            string path = @"C:\Temp\test";
            System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);

           // bool existdr = di.Exists;
           // richTextBox1.AppendText(existdr.ToString());

            foreach (var folder in di.GetDirectories())
            {
                string name = folder.Name;
                richTextBox1.AppendText(name + "\n");
            }

        }

4. 하부 파일 조회

        private void button1_Click(object sender, EventArgs e)
        {
            string path = @"C:\Temp\test";
            System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);

           // bool existdr = di.Exists;
           // richTextBox1.AppendText(existdr.ToString());

            //foreach (var folder in di.GetDirectories())
            //{
            //    string name = folder.Name;
            //    richTextBox1.AppendText(name + "\n");
            //}

            foreach (var file in di.GetFiles())
            {
                string name = file.Name;
                richTextBox1.AppendText(name + "\n");
            }


        }

 

5. 새로운 폴더로 이동 (기존에 폴더가 없어야함)

   private void button1_Click(object sender, EventArgs e)
        {
            string path = @"C:\Temp\test";
            System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);

         
            string newpath = @"C:\Temp\test2";
            di.MoveTo(newpath);

        }

test1의 경로는 없어지고 test2의 경로가 생성되며, 하부 내용은 같음 

728x90
반응형