这是我在开发中写的代码,用于读取指定路径的子文件夹和网页文件。下面代码是如何读取文件和文件夹的例程。如作一些修改,也可通过递归实现文件夹检索列表。
//绑定文件
private void bindFile(string sDir)
...{
string path = Server.MapPath(sDir); //指定的相对路径
DirectoryInfo dirInfo = new DirectoryInfo(path);
FileInfo fi;
DirectoryInfo dir;
FileSystemInfo[] fsoList = dirInfo.GetFileSystemInfos();
foreach (FileSystemInfo fsi in fsoList)
...{
if (fsi is FileInfo) //是文件
...{
//文件列表
fi = (FileInfo)fsi;
string ext = fi.Extension.ToLower(); //后缀名
ext = ext.Substring(1); //从第1位截取
if (ext == "aspx" || ext == "htm" || ext == "html") //只读取aspx和htm, html文件类型
...{
//写入临时表(临时表已创建)
DataRow row = tbFile.NewRow();
string[] str = new string[2];
str = getTitle(cmbDir.SelectedValue + fi.Name); //从网页文件中读取标题(使用自定义函数)
row["Title"] = str[0];
row["PageCode"] = str[1];
row["FileName"] = fi.Name;
row["FileSize"] = fi.Length;
row["CreateTime"] = fi.CreationTime.ToString("yyyy-MM-dd");
row["ModifTime"] = fi.LastWriteTime.ToString("yyyy-MM-dd");
row["FileType"] = "网页文件";
tbFile.Rows.Add(row);
}
}
else //这是目录
...{
dir = (DirectoryInfo)fsi;
//写入临时表
DataRow row = tbFile.NewRow();
row["FileName"] = dir.Name;
row["CreateTime"] = dir.CreationTime.ToString("yyyy-MM-dd");
row["ModifTime"] = dir.LastWriteTime.ToString("yyyy-MM-dd");
row["FileType"] = "文件夹";
tbFile.Rows.Add(row);
}
}
}
本文介绍了一段用于读取指定路径下所有子文件夹及网页文件(aspx、htm、html)的代码示例。该代码可以区分文件与文件夹,并将相关信息存储到临时表中。
302

被折叠的 条评论
为什么被折叠?



