使用我不能算一個目錄中的文件數量的DirectoryInfo和的FileInfoC#文件信息
我曾嘗試沒有成功這個代碼,因爲我沒有錯誤,但可以」 t在gridview中顯示。
我的代碼如下。
你能幫我嗎?
預先感謝您的任何幫助,真的很感激。
public DataTable getAllFiles()
{
DataTable dt = new DataTable();
sql = @String.Format(" SELECT * FROM doTable ;");
using (OdbcConnection cn =
new OdbcConnection(ConfigurationManager.ConnectionStrings["ConnMySQL"].ConnectionString))
{
using (OdbcCommand cmd =
new OdbcCommand(sql, cn))
{
try
{
cmd.Connection.Open();
using (OdbcDataReader reader = cmd.ExecuteReader())
{
if (reader.HasRows)
{
dt.Columns.Add("Nr of Files in directory");
while (reader.Read())
{
FilePath = Server.MapPath("/aspnet/" + reader["sFolder"].ToString().Replace('/', '\\'));
Response.Write(FilePath);
DirectoryInfo directory = new DirectoryInfo(@FilePath);
DirectoryInfo[] subDirectories = directory.GetDirectories();
FileInfo[] files = directory.GetFiles();
foreach (DirectoryInfo dirInfo in subDirectories)
{
int nrFiles = Directory.EnumerateFiles(dirInfo.FullName, "*.*", SearchOption.AllDirectories).Count();
Response.Write(nrFiles.ToString() + "<br />");
//Here the output is correct//
foreach (FileInfo f in files)
{
DataRow dr = dt.NewRow();
dr[0] = nrFiles.ToString();
}
gvDownload.DataSource = subDirectories;
gvDownload.DataBind();
}
}
}
}
}
catch (Exception ex)
{
throw new ApplicationException("operation failed!", ex);
}
finally
{
cmd.Connection.Close();
}
}
}
return dt;
}
#Edit 01
我需要顯示在GridView控件上子目錄的NR文件,現在是空的:
你能解釋一下你正在嘗試做什麼? – alexay68
@ alexay68謝謝你的回覆。我嘗試在我的服務器上的一個目錄中的gridview文件夾,子文件夾和文件中顯示。在DB中,我記住了列sFolder這個字符串控制/ Imp/foo –