问个比较变态的问题:如何得到项目下某个文件夹下所有.aspx文件的名字?
比如我想得到文件夹aa下所有aspx文件的名字(包括该文件夹包含的文件夹下的aspx文件??
是不是很难?
------解决方案--------------------用derecotory类读取整个目录的文件
------解决方案--------------------Directory 读取
------解决方案--------------------不难Directory 或DirectoryInfo
------解决方案--------------------不难,先进入文件夹aa循环查找扩展名为.aspx文件,获取名字,然后再查找子文件夹,再循环查找扩展名为.aspx文件,获取名字
------解决方案--------------------不变态啊 查看MSDN system.io
------解决方案--------------------Directory.GetFiles(Server.Mapath(path), "*.aspx ",SearchOption.AllDirectories)
------解决方案--------------------using system.io;
string[] files=Directory.GetFiles(Server.Mapath(path), "*.aspx ",SearchOption.AllDirectories)
------解决方案--------------------思路:
private void GetFolders(string path)
{
string[] dirs = Directory.GetDirectories(path );
string[] files = Directory.GetFiles(path, "*.aspx " );
foreach( string p in files )
{ }
foreach(string d in dirs)
{
GetFolders( dirs[ i ] );
}
}
------解决方案--------------------public ArrayList GetFiles(string dir)
{
ArrayList list = new ArrayList();
string[] cats = new string[0];
try { cats = Directory.GetDirectories(dir); }
catch { }
string[] files = new string[0];
try { files = Directory.GetFiles(dir, ".aspx "); }
catch { }
if(cats.Length> 0)
{
foreach(string cat in cats)
{
GetFiles(cat);
}
}
if(files.Length> 0)
{
foreach(string file in files)
{
string name = file.Substring(file.LastIndexOf( "\\ ")+1,file.LastIndexOf( ". ")-file.LastIndexOf( "\\ ")-1);
list.Add(name);
}
}
return list;
}
------解决方案--------------------基本的 IO 操作
------解决方案--------------------My.Computer.FileSystem.GetFiles( "文件夹绝对路径 ", FileIO.SearchOption.SearchAllSubDirectories, "*.aspx ")
返回
System.Collections.ObjectModel.ReadOnlyCollection(Of String)
------解决方案--------------------基本的IO操作
基本的递归操作
private void getDirectories(string path)
{
string[] fileNames = Directory.GetFiles(path);
string[] directories = Directory.GetDirectories(path);
foreach (string file in fileNames)
{
Console.WriteLine( "Filename:{0} ", file);
}
foreach (string dir in directories)
{
Console.WriteLine( "Directoriesname:{0} ", dir);
getDirectories(dir);
}
}
path是绝对路径Server.MapPath