您的位置:首页 > 编程语言 > C#

C#-文件目录-文件目录操作

2011-09-09 15:36 351 查看
找子目录可以这样做:

using   System;
using   System.IO;

class   Test
{
public   static   void   Main()
{
try
{
//   Only   get   subdirectories   that   begin   with   the   letter   "p. "
string[]   dirs   =   Directory.GetDirectories(@ "c:\ ",   "p* ");
Console.WriteLine( "The   number   of   directories   starting   with   p   is   {0}. ",   dirs.Length);
foreach   (string   dir   in   dirs)
{
Console.WriteLine(dir);
}
}
catch   (Exception   e)
{
Console.WriteLine( "The   process   failed:   {0} ",   e.ToString());
}
}
}


取本地目录内的文件名

private   void   showDirFiles(string   strPath)
{
try
{
if   (!Directory.Exists(strPath))
{//目录不存在,创建目录
Directory.CreateDirectory(strPath);
}

DirectoryInfo   mydir=new   DirectoryInfo(strPath);
FileInfo   []   files=mydir.GetFiles();
this.listBoxC.Items.Clear();//清楚listbox中现有项目
for(int   i=0;i <files.Length;i++)
{
this.listBoxC.Items.Add(files[i].ToString());
}
}
catch(Exception   ex)
{
MessageBox.Show(ex.Message);
}
}


递归实现查找目录下的所有子目录和文件

public   void   FindFile(string   dir)                           //参数为指定的目录
{
//在指定目录及子目录下查找文件,在listBox1中列出子目录及文件
DirectoryInfo   Dir=new   DirectoryInfo(dir);
try
{
foreach(DirectoryInfo   d   in   Dir.GetDirectories())     //查找子目录
{
FindFile(Dir+d.ToString()+ "\\ ");
listBox1.Items.Add(Dir+d.ToString()+ "\\ ");       //listBox1中填加目录名
}
foreach(FileInfo   f   in   Dir.GetFiles( "*.* "))             //查找文件
{
listBox1.Items.Add(Dir+f.ToString());     //listBox1中填加文件名
}
}
catch(Exception   e)
{
MessageBox.Show(e.Message);
}

}

调用
private   void   button1_Click(object   sender,   System.EventArgs   e)
{
string   currentdir= "F:\\myprogram\\C#\\FileSearch ";     //搜索的目录
if(currentdir[currentdir.Length-1]!= '\\ ')   //非根目录
currentdir+= "\\ ";
FindFile(currentdir);     //调用查找文件函数
}

加上   using   System.IO;


引用:http://topic.csdn.net/t/20050630/18/4115459.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: