文件夹
- 目录的路径获取
我一般都是创建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 <string> 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类获取文件名
- GetFileName()方法:从路径字符串中得到文件名(带扩展名)
- GetFileNameWithoutExtension()方法,从路径字符串中得到文件名(不带扩展名)
- GetExtension()方法,从文件路径字符串中得到文件的扩展名
- GetDirectoryName()方法,得到文件的文件夹路径
- GetFullPath()方法,从文件字符串中得到包括文件名和扩展名的全路径名
- 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);
}
}
}