ASP.NET 导入excel 数据
发布日期:2021-08-28 19:37:42 浏览次数:4 分类:技术文章

本文共 3452 字,大约阅读时间需要 11 分钟。

hot3.png

1,需要给上传文件的目录给予权限

2、

  

 

1   protected void btn_ExInto_pass_Click(object sender, EventArgs e)    //导入 2         { 3             if (FileUpload1.HasFile == false) 4             { 5                 Alert.Show("请您选择Excel文件"); 6                 return;//当无文件时,返回         7             } 8             string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower(); 9             if (IsXls != ".xls")10             {11                 Alert.Show("只可以选择Excel文件");12                 return;//当选择的不是Excel文件时,返回       13             }14             string filename = FileUpload1.FileName;                     //获取Execle文件名  15             string dirPath = "UpLoadFile\\" + System.DateTime.Now.Year.ToString();16             if (!Directory.Exists(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + dirPath))17                 Directory.CreateDirectory(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + dirPath);18 19             Random rand = new Random(unchecked((int)DateTime.Now.Ticks));20             string strpath = dirPath + "\\" + DateTime.Now.ToString("MMddHHmmss") + rand.Next(1000, 9999).ToString() + ".xls";  //获取Execle文件路径 21             string strError = "", strRepeat = "", asMsg = "";22             strpath = Server.MapPath(strpath);23             FileUpload1.PostedFile.SaveAs(strpath);24 25             DataSet ds = ExecleDs(strpath, filename);26             if (ds == null || ds.Tables[0].Rows.Count == 0)27             {28                 Alert.Show("Excel表为空表,无数据!");   //当Excel表为空时,对用户进行提示       29             }30             else31             {32                 //for add33 34                 for (int i = 0; i < ds.Tables[0].Rows.Count; i++)35                 {36                     string sql_str = "INSERT INTO PoInfo VALUES('" + ds.Tables[0].Rows[i][0] + "' ,'" + ds.Tables[0].Rows[i][1] + "'  ,'" + ds.Tables[0].Rows[i][2] + "' ,'" + ds.Tables[0].Rows[i][3] + "' ,'" + ds.Tables[0].Rows[i][4] + "'  ,'" + ds.Tables[0].Rows[i][5] + "'  ,'" + ds.Tables[0].Rows[i][6] + "'  ,'" + ds.Tables[0].Rows[i][7] + "'  ,'" + ds.Tables[0].Rows[i][8] + "'  ,'" + ds.Tables[0].Rows[i][9] + "'  ,'" + ds.Tables[0].Rows[i][10] + "'  ,'" + ds.Tables[0].Rows[i][11] + "'  ,'" + ds.Tables[0].Rows[i][12] + "'  ,'')";37 38                    int row = SqlHelper.ExecuteSql(SqlHelper.LocalSqlServer, sql_str);39 40                 }41 42                 Alert.Show("导入数据成功!");43                 BindGrid();44 45             }46         }47         public DataSet ExecleDs(string filenameurl, string table)48         {49             string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";50             OleDbConnection conn = new OleDbConnection(strConn);51             conn.Open();52             OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);53             DataSet ds = new DataSet();54             try55             {56                 odda.Fill(ds, table);57             }58             catch (Exception)59             {60                 throw;61             }62             finally63             {64                 odda.Dispose();65                 conn.Close();66                 conn.Dispose();67                 System.IO.File.Delete(filenameurl);    //删除文件68             }69             return ds;70         }

 

转载于:https://my.oschina.net/freegodly/blog/664646

转载地址:https://blog.csdn.net/weixin_33969116/article/details/92049922 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:1-swift学习
下一篇:操作分布式文件之五:如何读写远程文件

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年03月02日 05时15分34秒