簡體   English   中英

如何使用 C# asp.net 在 GridView 中添加文件上傳日期和/或時間?

[英]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 中創建了邊界字段。 有人可以告訴我如何將文件上傳時間和日期顯示為上面顯示的相同代碼嗎?
非常感謝。

您可以使用以下方法獲取文件的創建時間和修改時間。

DateTime 創建 = File.GetCreationTime(@"C:\\test.txt"); DateTime 修改 = 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;
            }
        }

結果:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM