文件和文件夹的操作——文件夹的操作

举报
AI浩 发表于 2021/12/23 00:18:27 2021/12/23
【摘要】 创建文件夹 创建文件夹主要使用Directory类的Create方法   private void button1_Click(object sender, EventArgs e)         {    &nbs...
  1. 创建文件夹

创建文件夹主要使用Directory类的Create方法

  private void button1_Click(object sender, EventArgs e)

        {

            FolderBrowserDialog FBDialog = new FolderBrowserDialog();//创建FolderBrowserDialog对象

            if (FBDialog.ShowDialog() == DialogResult.OK)//判断是否选择文件夹

            {

                string strPath = FBDialog.SelectedPath;//记录选择的文件夹

                if (strPath.EndsWith("\\"))

                    textBox1.Text = strPath;//显示选择的文件夹

                else

                    textBox1.Text = strPath + "\\";

            }

        }

        private void button2_Click(object sender, EventArgs e)

        {

            DirectoryInfo DInfo = new DirectoryInfo(textBox1.Text + textBox2.Text);//创建DirectoryInfo对象

            DInfo.Create();//创建文件夹

        }

  1. 删除文件夹

思路:删除文件夹主要用到了DirectoryInfo类的Delete方法,语法如下:

public override void Delete();

public void Delete(bool recursive);

uploading.4e448015.gif转存失败重新上传取消 参数说明:若为true,则删除该文件夹及其子文件夹和所有文件,否则为false。

例:

public partial class Frm_Main : Form

    {

        public Frm_Main()

        {

            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)

        {

            FolderBrowserDialog FBDialog = new FolderBrowserDialog();//创建FolderBrowserDialog对象

            if (FBDialog.ShowDialog() == DialogResult.OK)//判断是否选择了文件夹

                textBox1.Text = FBDialog.SelectedPath;//显示选择的文件夹

        }

        private void button2_Click(object sender, EventArgs e)

        {

            DirectoryInfo DInfo = new DirectoryInfo(textBox1.Text);//创建DirectoryInfo对象

            DInfo.Delete(true);//删除文件夹所有内容

            MessageBox.Show("删除文件夹成功!");

        }

}

注:Directory类和DirectoryInfo类的区别:Directory是静态类,所以他的调用需要字符串参数为每一个方法调用规定文件夹路径,因此如果要在对象上进行单一方法调用,则可以使用静态Directory类,在这种情况下静态调用的速度要快一些,因为.Net框架不必执行实例化对象并调用其方法的过程。如果在文件夹上执行几种操作,则创建DirectoryInfo对象并是用其方法就更好一些,这样会提高效率,因为对象在文件夹上引用正确的文件夹,而静态类就必须每次都寻找文件夹。

  1. 获取所有逻辑磁盘目录

思路:获取计算机中的所有逻辑分区,主要通过Directory类的GetLogicalDrives方法实现,然后获取逻辑分区下所有自问佳佳和文件,通过Directory类的GetDirectories方法和GetFiles方法实现。

(1)、GetLogicalDrives方法:检索计算机上逻辑分区的名称。语法如下:

public static string[] GetLogicalDrivers()

(2)、GetDirectories方法:该方法用来获取指定文件夹中子文件夹的名称。语法如下:

public static String[] GetDirectries(string path)

参数说明:path为其返回子文件夹名称的数组的路径。

返回值:一个类型String的数组,他包含path中子文件夹的名称。

(3)、GetFiles方法 该方法返回指定文件夹的文件的名称。语法如下:

public static string[] GetFiles(string path)

参数说明:path将从其检索文件的文件夹

返回值:指定文件夹中文件名得 String数组。

例:

  public void listFolders(ToolStripComboBox tscb)//获取本地磁盘目录

        {

            string[] logicdrives = System.IO.Directory.GetLogicalDrives();

            for (int i = 0; i < logicdrives.Length; i++)

            {

                tscb.Items.Add(logicdrives[i]);

                tscb.SelectedIndex = 0;

            }

        }

文章来源: wanghao.blog.csdn.net,作者:AI浩,版权归原作者所有,如需转载,请联系作者。

原文链接:wanghao.blog.csdn.net/article/details/105593644

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。