Excel 导入 导出操作

在很多的时候我们都要用到Excel的导出 可是  有些东西是现成的  所以我们 就只需要理解 就好 没必要每次开发都自己写一遍 在这里 把我的方法写一下

View Code
 1  protected void btnExcle_Click(object sender, EventArgs e)
 2         {
 3             DataSet ds = bll.GetList("");
 4             if (ds != null)
 5             {
 6                 Response.Clear();
 7                 Response.Charset = "GB2312";
 8                 HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
 9                 HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;FileName=data.xls");
10 
11 
12                 ////StringBuilder:使用麻烦,但速度快。
13                 ////string:使用简单,+完成连接字符串。但每次连接两个字符串,都要生成一个新的字符串。
14 
15                 //string str = "sgxing" + "value";// "sgxingvalue";
16 
17 
18                 System.Text.StringBuilder sb = new System.Text.StringBuilder();
19 
20                 sb.Append(@"<meta http-equiv='content-type' content='application/ms-excel; charset=UTF-8'/><table style='border:1px;'>
21 
22                 <tr>
23                     <td>用户名</td>
24                     <td>用户密码</td>
25                     <td>Email</td>
26                      <td>QQ</td>
27                      <td>MSN</td>
28                      <td>电话</td>
29                       <td>住址</td>
30                      <td>创建时间</td>
31                 </tr>");
32                 foreach (DataRow dr in ds.Tables[0].Rows)
33                 {
34                     sb.Append("<tr><td>" + dr[1].ToString() + "</td><td>" + dr[2].ToString() + "</td><td>" + dr[3].ToString() + "</td><td>" + dr[4].ToString() + "</td><td>" + dr[5].ToString() + "</td><td>" + dr[6].ToString() + "</td><td>" + dr[7].ToString() + "</td><td>"+ dr[8].ToString() + "</td></tr>");
35 
36                 }
37                 sb.Append("</table>");
38                 HttpContext.Current.Response.Write(sb.ToString());
39                 HttpContext.Current.Response.End();
40             }
41         }

在这里需要说明的是在很以前的自己写的代码中 导出的数据会出现乱码的问题 但是 本编 已经查询解决 

就是在导出的文件是添加meta声明   上面的是完整版本!

meta http-equiv=content-type content=applicationms-excel; charset=UTF-8

导入操作:

View Code
 protected void uploaddata_Click(object sender, EventArgs e)
        { 
            

            //上传文件(检查后缀,修改文件名)

            //2012032601.xls

            string FileName = "2012032601.xls"; //"~/uploads/"

            DataSet ds = Utility.ExcelHepler.ExcelToDataSet(Server.MapPath("~/uploads/" + FileName), "data");
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                
                string sql = "insert into t_lt() values(" + dr[0].ToString + ");";
                //在dbhelper提交执行这句sql就可以
            }

        }

希望对大家有所帮助!!

原文地址:https://www.cnblogs.com/ruicky/p/2457745.html