ASP.NET 导入excel 数据
1,需要给上传文件的目录给予权限

2、
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="btn_ExInto_pass" runat="server" Text="导入" OnClick="btn_ExInto_pass_Click" />
protected void btn_ExInto_pass_Click(object sender, EventArgs e) //导入
{
if (FileUpload1.HasFile == false)
{
Alert.Show("请您选择Excel文件");
return;//当无文件时,返回
}
string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();
if (IsXls != ".xls")
{
Alert.Show("只可以选择Excel文件");
return;//当选择的不是Excel文件时,返回
}
string filename = FileUpload1.FileName; //获取Execle文件名
string dirPath = "UpLoadFile\\" + System.DateTime.Now.Year.ToString();
if (!Directory.Exists(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + dirPath))
Directory.CreateDirectory(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + dirPath); Random rand = new Random(unchecked((int)DateTime.Now.Ticks));
string strpath = dirPath + "\\" + DateTime.Now.ToString("MMddHHmmss") + rand.Next(, ).ToString() + ".xls"; //获取Execle文件路径
string strError = "", strRepeat = "", asMsg = "";
strpath = Server.MapPath(strpath);
FileUpload1.PostedFile.SaveAs(strpath); DataSet ds = ExecleDs(strpath, filename);
if (ds == null || ds.Tables[].Rows.Count == )
{
Alert.Show("Excel表为空表,无数据!"); //当Excel表为空时,对用户进行提示
}
else
{
//for add for (int i = ; i < ds.Tables[].Rows.Count; i++)
{
string sql_str = "INSERT INTO PoInfo VALUES('" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'" + ds.Tables[].Rows[i][] + "' ,'')"; int row = SqlHelper.ExecuteSql(SqlHelper.LocalSqlServer, sql_str); } Alert.Show("导入数据成功!");
BindGrid(); }
}
public DataSet ExecleDs(string filenameurl, string table)
{
string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);
DataSet ds = new DataSet();
try
{
odda.Fill(ds, table);
}
catch (Exception)
{
throw;
}
finally
{
odda.Dispose();
conn.Close();
conn.Dispose();
System.IO.File.Delete(filenameurl); //删除文件
}
return ds;
}
ASP.NET 导入excel 数据的更多相关文章
- Asp.net 导入Excel数据
前台代码: <body> <form id="form1" runat="server"> <div> <asp:Fi ...
- Asp.Net Core 导入Excel数据到Sqlite数据库并重新导出到Excel
Asp.Net Core 导入Excel数据到Sqlite数据库并重新导出到Excel 在博文"在Asp.Net Core 使用 Sqlite 数据库"中创建了ASP.NET Co ...
- 结合bootstrap fileinput插件和Bootstrap-table表格插件,实现文件上传、预览、提交的导入Excel数据操作流程
1.bootstrap-fileinpu的简单介绍 在前面的随笔,我介绍了Bootstrap-table表格插件的具体项目应用过程,本篇随笔介绍另外一个Bootstrap FieInput插件的使用, ...
- SQL Server服务器上需要导入Excel数据的必要条件
SQL Server服务器上需要导入Excel数据,必须安装2007 Office system 驱动程序:数据连接组件,或者Access2010的数据库引擎可再发行程序包,这样就不必在服务器上装Ex ...
- PLSQL Developer导入Excel数据
LSQL Developer导入Excel数据 最近处理将Excel数据导入Oracle的工作比较多.之前都是采用Sqlldr命令行导入的方式处理.每次导入不同格式的Excel表数据,都需要先把Exc ...
- [转] Asp.Net 导出 Excel 数据的9种方案
湛刚 de BLOG 原文地址 Asp.Net 导出 Excel 数据的9种方案 简介 Excel 的强大之处在于它不仅仅只能打开Excel格式的文档,它还能打开CSV格式.Tab格式.website ...
- 导入excel数据
前提条件:先要安装好EXCEL软件. 程序中经常要用到导入excel数据的功能.其实通过ole操作excel就简单的几行代码,但记性不好,经常要用经常要找, 还是作篇笔记吧. var ExcelApp ...
- (转)PLSQL Developer导入Excel数据
场景:近来在做加班记录的统计,主要是统计Excel表格中的时间,因为我对于Excel表格的操作不是很熟悉,所以就想到把表格中的数据导入到数据库中,通过脚本语言来统计,就很方便了!但是目前来看,我还没有 ...
- 基于 Aspose.Cells与XML导入excel 数据----操作类封装
前言 导入excel数据, 在每个项目中基本上都会遇到,第三方插件或者基于微软office,用的最多的就是npoi,aspose.cells和c#基于office这三种方式,其中各有各的优缺点,在这也 ...
随机推荐
- elk 分布式部署
这个logstash 读取日志 是增量的 还是怎么读的? 定时每秒读增量 机器配置: elasticsearch-192.168.32.80 elasticsearch-192.168.32.81 e ...
- hihoCoder 1388 Periodic Signal(FFT)
[题目链接] http://hihocoder.com/problemset/problem/1388 [题目大意] 给出A数列和B数列,求下图式子: [题解] 我们将多项式拆开,我们可以得到固定项A ...
- Java图形化界面设计——布局管理器之GridLayout(网格布局)
网格布局特点: l 使容器中的各组件呈M行×N列的网格状分布. l 网格每列宽度相同,等于容器的宽度除以网格的列数. l 网格每行高度相同,等于容器的高度除以网格的行数. l 各组件的排列方式 ...
- 3. 表单输入框 在 IE 中 会有 “X” 和 类似wifi图标的图标出现
原因: IE 自动给 input加了伪类 ::ms-clear 和 ::ms-reveal 解决: input::ms-clear, input::ms-reveal { display: none; ...
- Javascript Duff装置 循环展开(Javascript Loop unrolling Duff device)
Javascript 中会用到for 循环,当要循环的数据记录很多的时候,可能会对性能产生很大影响.这时我们可以考虑展开for循环,这时就要用到Duff装置(Duff Device). 先来看一个小例 ...
- w3c教程
http://www.w3cfuns.com/course.php http://www.w3cfuns.com/home.php?mod=space&uid=5434413&do=b ...
- 委托与Lambda表达式
~,先不急说委托和Lambda表达式,先看两个例子再说: 1. 通过委托,为一个数字加10,如下代码: class Program { private delegate int JiSuan(int ...
- Lucence.Net学习+盘古分词
创建索引库 //读取文件,存储到索引库 public string CreateDatebase() { //获取索引库的路径 ...
- Win7下安装Apache+PHP+MySQL
Win 7 下搭建 WAMP 环境本文安装方法适用于 Windows7 下的 Apache + MySQL + PHP(WAMP)安装,同时也适用于 Windows XP 系统下的安装和配置.一.安装 ...
- Linux内核学习笔记-2.进程管理
原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...