C#文件夹操作

mac2022-06-30  16

一、文件夹操作

Directory类,DirectoryInfo类.使用using System.IO命名空间

(一)创建文件夹

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void Create_Click(object sender, EventArgs e) 3 { 4 Directory.CreateDirectory(path); 5 }

方法二:

1 private string path = @"F:\Text\ceshi"; 2 private void Create_Click(object sender, EventArgs e) 3 {4 5 DirectoryInfo CreateDirectory = new DirectoryInfo(path); 6 CreateDirectory.Create(); 7 }

 

(二)删除文件夹

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void Delete_Click(object sender, EventArgs e) 3 { 4 Directory.Delete(path); 5 }

 方法二:

1 private string path = @"F:\Text\ceshi"; 2 private void Delete_Click(object sender, EventArgs e) 3 { 4 DirectoryInfo DeleteDircetory = new DirectoryInfo(path); 5 DeleteDircetory.Delete(); 6 }

 

(三)判断文件夹是否存在

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void Exist_Click(object sender, EventArgs e) 3 { 4 bool ifExist = Directory.Exists(path); 5 if (ifExist) 6 { 7 MessageBox.Show("已存在"); 8 } 9 else 10 { 11 MessageBox.Show("不存在"); 12 } 13 }

 

方法二:

1 private string path = @"F:\Text\ceshi"; 2 private void Exist_Click(object sender, EventArgs e) 3 { 4 DirectoryInfo ExistDirectory = new DirectoryInfo(path); 5 bool ifExist = ExistDirectory.Exists; 6 if (ifExist) 7 { 8 MessageBox.Show("已存在"); 9 } 10 else 11 { 12 MessageBox.Show("不存在"); 13 } 14 }

 

(四)获取子文件夹

注:获取子文件只能是获取--该路径下的文件夹,其他非文件夹格式获取不到

方法一:

1 private void GetDirectory_Click(object sender, EventArgs e) 2 { 3 string[] Dire = Directory.GetDirectories(@"F:\Text");//返回的字符串是全路径加文件夹名称(如:"F:\Text\ceshi") 4 listBox_GetDiretory.Items.Clear(); 5 listBox_GetDiretory.Items.AddRange(Dire); 6 }

 

方法二:

1 private void GetDirectory_Click(object sender, EventArgs e) 2 { 3 DirectoryInfo GetDirectory = new DirectoryInfo(@"F:\Text");//只返回文件夹的名字 4 DirectoryInfo[] Dire = GetDirectory.GetDirectories(); 5 listBox_GetDiretory.Items.Clear(); 6 listBox_GetDiretory.Items.AddRange(Dire); 7 }

 

(五)获取子文件

注:获取子文件只获取--除了文件夹以外其他的文件

方法一:

1 private void GetFile_Click(object sender, EventArgs e) 2 { 3 string[] file = Directory.GetFiles(@"F:\Text");//返回的字符串是全路径加文件名称(如:"F:\Text\ceshi") 4 listBox_GetFile.Items.AddRange(file); 5 }

 

方法二:

1 private void GetFile_Click(object sender, EventArgs e) 2 { 3 DirectoryInfo GetFile = new DirectoryInfo(@"F:\Text");//只返回文件名称 4 FileInfo[] file = GetFile.GetFiles(); 5 listBox_GetFile.Items.AddRange(file); 6 }

 

(六)获取文件夹的相关属性

注:日期时间后面Utc代表格列尼日时间

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void GetInfo_Click(object sender, EventArgs e) 3 { 4 DateTime CreateTime = Directory.GetCreationTime(path); //获取创建时间 5 DateTime AccessTime = Directory.GetLastAccessTime(path);//获取最后访问时间 6 DateTime WriteTime = Directory.GetLastWriteTime(path); //获取最后写入的时间 7 DirectoryInfo.Text = CreateTime.ToString() + "\n" + AccessTime.ToString() + "\n" + WriteTime.ToString(); 8 }

 

方法二:

1 private string path = @"F:\Text\ceshi"; 2 private void GetInfo_Click(object sender, EventArgs e) 3 { 4 DirectoryInfo DireInfo = new System.IO.DirectoryInfo(path); 5 Info.Text = DireInfo.CreationTime.ToString() + "\n" + DireInfo.LastAccessTime.ToString() + "\n" + DireInfo.LastWriteTime.ToString(); 6 }

 

(七)修改文件夹的相关属性

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void SetInfo_Click(object sender, EventArgs e) 3 { 4 DateTime T = DateTime.Now; 5 Directory.SetCreationTime(path, T); 6 Directory.SetLastAccessTime(path, T); 7 Directory.SetLastWriteTime(path, T); 8 }

 

方法二:

(.............)

(八)移动文件夹(或改名)

注:

Move()或MoveTo():1.路径不同名字相同(相当于--剪切),

           2.路径不同名字不同(相当于--剪切+重命名),

           3.路径相同名字不同(相当于--重命名).

 且移动是同时将文件夹内的所有对象,移动.

方法一:

1 private string path = @"F:\Text\ceshi"; 2 private void MoveDirectory_Click(object sender, EventArgs e) 3 { 4 Directory.Move(path, @"F:\Test"); 5 }

方法二:

1 private string path = @"F:\Text\ceshi"; 2 private void MoveDirectory_Click(object sender, EventArgs e) 3 { 4 DirectoryInfo MoveDirectory = new DirectoryInfo(path); 5 MoveDirectory.MoveTo(@"F:\ceshi2"); 6 }

转载于:https://www.cnblogs.com/IT1517/p/4768332.html

相关资源:C#获取指定文件夹下的所有文件夹
最新回复(0)