ASP.NET之之Excel下载模板、导入、导出操作下载模板、导入、导出操作
本文介绍了ASP.NET下Excel下载模板、导入、导出操作,供大家参考,具体内容如下
1.下载模板功能下载模板功能
protected void btnDownload_Click(object sender, EventArgs e)
{
var path = Server.MapPath(("upfiles\") + "test.xlt"); //upfiles-文件夹 test.xlt-文件
var name = "test.xlt";
try
{
var file = new FileInfo(path);
Response.Clear();
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(name)); //头信息,指定默认文件
名
Response.AddHeader("Content-Length", file.Length.ToString());//显示下载进度
Response.ContentType = "application/ms-excel"; // 指定返回的是一个不能被客户端读取的流,必须被下载
Response.WriteFile(file.FullName); // 把文件流发送到客户端
HttpContext.Current.ApplicationInstance.CompleteRequest();
}
catch (Exception ex)
{
Response.Write("<script>alert('错误:" + ex.Message + ",请尽快与管理员联系')</script>");
}
}
2.导入数据导入数据
Excel数据导入到数据库中。
protected void btnImport_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile == false) //判断是否包含一个文件
{
Response.Write("<script>alert('请您选择Excel文件!')</script>");//未上传就点击了导入按钮
return;
}
string isXls = Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//获得文件的扩展名
var extenLen = isXls.Length;
if (!isXls.Contains(".xls")) //判断是否 是excel文件
{
Response.Write("<script>alert('只可以选择Excel文件!')</script>");
return;
}
string filename = FileUpload1.FileName; //获取Excle文件名
string savePath = Server.MapPath(("upfiles\") + filename);//Server.MapPath 获得虚拟服务器相对路径
string savePath2 = Server.MapPath(("upfiles\"));
if (!Directory.Exists(savePath2)) //如果不存在upfiles文件夹则创建
{
Directory.CreateDirectory(savePath2);
}
FileUpload1.SaveAs(savePath); //SaveAs 将上传的文件内容保存在服务器上
var ds = ExcelSqlConnection(savePath, filename); //将Excel转成DataSet
var dtRows = ds.Tables[0].Rows.Count;
var dt = ds.Tables[0];
if (dtRows == 0)
{
Response.Write("<script>alert('Excel表无数据!')</script>");
return;
}
try
{
评论0