[Winform] 文件夹及文件名称的读取

文件夹

  • 目录的路径获取
    我一般都是创建button,TextBook两个控件,通过button的click代码将目录的路径赋值为TextBook的文本值.
 private void button1_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog path = new FolderBrowserDialog();
            path.ShowDialog();
            textBox1.Text = path.SelectedPath;
        }
  • 读取目录路径下的文件夹名
        public static void DA_AFFIX_DIR(String path) {
            
            //获取文件地址,此时返回的文件夹包含文件夹的整体路径
            string[] directorieStrings = Directory.GetDirectories(path);
            //目录下的文件夹的名称集合
            List  direName=directorieStrings.Select(d => d.Substring(d.LastIndexOf('\\') + 1)).ToList();
            }

文件

  • 读取选择文件名
private string SelectFile() //弹出一个选择文件的对话框
{
     OpenFileDialog file = new OpenFileDialog();
     file.ShowDialog();
     return file.SafeFileName;
}
  • 读取目录路径下的文件名
                DirectoryInfo child = new DirectoryInfo(dir);
                FileInfo[] fil = child.GetFiles();
                foreach (FileInfo f in fil)
                {
                    //获取文件名
                     string name = f.Name;
                }
  • 使用Path类获取文件名
  1. GetFileName()方法:从路径字符串中得到文件名(带扩展名)
  2. GetFileNameWithoutExtension()方法,从路径字符串中得到文件名(不带扩展名)
  3. GetExtension()方法,从文件路径字符串中得到文件的扩展名
  4. GetDirectoryName()方法,得到文件的文件夹路径
  5. GetFullPath()方法,从文件字符串中得到包括文件名和扩展名的全路径名
  6. Combine()方法,合并两个文件路径字符串

实例

给定一个目录,获取该目录下的文件夹的名称和其子目录下所有文件的名称

public static void DA_AFFIX_DIR(String path) {
            
            //获取文件地址,此时返回包含文件夹的整体路径,即获取了子目录的路径集合
            string[] directorieStrings = Directory.GetDirectories(path);
            foreach (string dir in directorieStrings)
            {
                //获取目录下的文件夹的名称
                DireName=dir.Substring(dir.LastIndexOf('\\')+1);
                //设置子目录,读取子目录下的文件的名称
                DirectoryInfo child = new DirectoryInfo(dir);
                FileInfo[] fil = child.GetFiles();
                foreach (FileInfo f in fil)
                {
                    //获取带扩展名的文件名
                    string filename = Path.GetFileName(f.FullName);
                    //获取扩展名
                    string extension = Path.GetExtension(f.FullName);
                }
            }
        }

你可能感兴趣的:([Winform] 文件夹及文件名称的读取)