如何使用 C# asp.net 在 GridView 中添加文件上传日期 and/or 时间?

How to add a file upload date and/or time in GridView using C# asp.net?

protected void Button2_Click(object sender, EventArgs e)
    {
        if (FileUpload1.HasFile)
        {
            string fileExtenstion = System.IO.Path.GetExtension(FileUpload1.FileName);
            if (fileExtenstion.ToLower() != ".doc" && fileExtenstion.ToLower() != ".docx")
            {
                Label1.Text = "Only files of docx extenstion are allowed";
                Label1.ForeColor = System.Drawing.Color.Red;
            }
            else
            {
                FileUpload1.SaveAs(Server.MapPath("~/uploads/" + FileUpload1.FileName));
                Label1.Text = "File Uploaded successfully";
                Label1.ForeColor = System.Drawing.Color.Green;
                string[] filepaths = Directory.GetFiles(Server.MapPath("~/uploads/"));
                DataTable dt = new DataTable();
                DataRow dr;
                dt.Columns.Add("filenames");
                foreach (string filepath in filepaths)
                {
                    dr = dt.NewRow();
                    dr["filenames"] = Path.GetFileName(filepath).ToString();
                    dt.Rows.Add(dr);
                }
                GridView1.DataSource = dt;
                GridView1.DataBind();
            }
        }
        else
        {
            Label1.Text = "Please upload the file";
            Label1.ForeColor = System.Drawing.Color.Red;
        }
    }
    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        GridViewRow gr = GridView1.SelectedRow;
        string filepath = Server.MapPath("~/upload/" + gr.Cells[0].Text);
        Response.ContentType = ContentType;
        Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(filepath));
        Response.WriteFile(filepath);

        Response.End();
    }

所以这段代码基本上是让用户上传文件并显示可以下载的上传文件的名称。不,我在 Gridview 中创建了 boundfield。有人可以告诉我如何将文件上传时间和日期显示为上面显示的相同代码吗?
非常感谢。

您可以使用以下方法获取文件的创建时间和修改时间。

创建日期时间 = File.GetCreationTime(@"C:\test.txt"); 日期时间修改 = File.GetLastWriteTime(@"C:\test.txt");

然后您可以在数据源中为日期时间再添加一列以在 GridView 上显示它。

感谢和问候, Dilshad Gulam Khan.

在 UpLoadFile 控件中,无法通过

检索文件创建日期

正在上传文件,可以设置当前时间为文件上传时间

代码:

protected void Button2_Click(object sender, EventArgs e)
        {
            if (FileUpload1.HasFile)
            {
                string fileExtenstion = System.IO.Path.GetExtension(FileUpload1.FileName);
                if (fileExtenstion.ToLower() != ".doc" && fileExtenstion.ToLower() != ".docx")
                {
                    Label1.Text = "Only files of docx extenstion are allowed";
                    Label1.ForeColor = System.Drawing.Color.Red;
                }
                else
                {
                    string date = DateTime.Now.ToString("h:mm:ss tt");
                    FileUpload1.SaveAs(Server.MapPath("~/uploads/" + FileUpload1.FileName));
                    Label1.Text = "File Uploaded successfully";
                    Label1.ForeColor = System.Drawing.Color.Green;
                    string[] filepaths = Directory.GetFiles(Server.MapPath("~/uploads/"));

                    DataTable dt = new DataTable();
                    DataRow dr;
                    dt.Columns.Add("filenames");
                    dt.Columns.Add("date");
                    foreach (string filepath in filepaths)
                    {
                        dr = dt.NewRow();
                        dr["filenames"] = Path.GetFileName(filepath).ToString();
                        dr["date"] = date;
                        dt.Rows.Add(dr);
                    }
                    GridView1.DataSource = dt;
                    GridView1.DataBind();
                }
            }
            else
            {
                Label1.Text = "Please upload the file";
                Label1.ForeColor = System.Drawing.Color.Red;
            }
        }

结果: