Asp.net 獲取服務器指定文件夾目錄文件,並提供下載


 string dirPath = HttpContext.Current.Server.MapPath("uploads/");
            if (Directory.Exists(dirPath))
            {
                //獲得目錄信息
                DirectoryInfo dir = new DirectoryInfo(dirPath);
                //獲得目錄文件列表
                FileInfo[] files = dir.GetFiles("*.*");
                string[] fileNames = new string[files.Length];

                //臨時數據表
                DataTable dt = new DataTable();
                dt.Columns.Add("FileName");
               
                foreach (FileInfo fileInfo in files)
                {
                    DataRow dr = dt.NewRow();
                    dr["FileName"] = fileInfo.Name;
                    dt.Rows.Add(dr);

                }
                Repeater1.DataSource = dt;
                Repeater1.DataBind();
            }

  

if (e.CommandName == "down")
        {
          
            try
            {
                    string DownloadFileName = "~/uploads/" + e.CommandArgument.ToString();//文件路徑
                    string filepath = Server.MapPath(DownloadFileName);
                    string filename = Path.GetFileName(filepath);
                    FileInfo file = new FileInfo(filepath);
                    Response.Clear();
                    Response.ContentType = "application/octet-stream";
                    Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8));
                    Response.AddHeader("Content-length", file.Length.ToString());
                    Response.Flush();
                    Response.WriteFile(filepath);
            }
            catch
            {
                Response.Write("<script>alert('沒有找到下載的源文件')</script>");
            }

        }

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM