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这三种方式,其中各有各的优缺点,在这也 ...
随机推荐
- thoughtbot/capybara-webkit
thoughtbot/capybara-webkit A capybara driver that uses WebKit via QtWebKit. Qt Dependency and Instal ...
- Java学习——Ubuntu下jdk的安装以及Java环境的配置
第一步.下载 到官网下载jdk,在Java SE Development Kit 7uXX里面,把Accept License Agreement 打勾,这样才能下载jdk,然后我们选择对应的Ubun ...
- [C/C++标准库]_[0基础]_[优先队列priority_queue的使用]
std::priority_queue 场景: 1. 对于一个任务队列,任务的优先级由任务的priority属性指明,这时候就须要优先级越高的先运行.而queue并没有排序功能,这时priority_ ...
- ListBox控件的操作与实现
.NET FrameWork>參考>类库>System.Windows.Forms>ListBox类的属性 1. 属性列表: SelectionMode 组件中 ...
- curl之post提交xml
直接上代码: /** * 以post方式提交xml到对应的接口url * * @param string $xml 需要post的xml数据 * @param string $url url * @p ...
- CSS换行2
1.可以使用强制换行符号<br />换行.如果在一个文章里可以在文章需要换行的地方加入<br />即可实现自动换行-常说的小换行,与换行前没有间隔.实例如下图 换行说明图无间隔 ...
- POJ 2115 模线性方程 ax=b(mod n)
/* (x*c+a)%(2^k)==b →(x*c)%(2^k)==b-a 满足定理: 推论1:方程ax=b(mod n)对于未知量x有解,当且仅当gcd(a,n) | b. 推论2:方程ax=b(m ...
- TabelView的多选模式
@interface ViewController ()<UITableViewDelegate,UITableViewDataSource> @property(nonatomic,st ...
- 编写一个程序, 将 a.txt 文件中的单词与 b.txt 文件中的 单词交替合并到 c.txt 文件中, a.txt 文件中的单词用回车符 分隔, b.txt 文件中用回车或空格进行分隔。
package cn.itcast; import java.io.File; import java.io.FileReader; import java.io.FileWriter; public ...
- HDOJ 1308.Is It A Tree?
2015-07-15 问题简述: 给出一组节点关系,判断由这些节点组成的图是否为一颗树. 树只有一个根节点,每个节点只有一条边指向它,没有环. 原题链接:http://poj.org/problem? ...