利用ExcelDataReader封装类 导入表格数据
nuget 添加Install-Package ExcelDataReader
包
//FilePath为上传的文件路径
public void Leading_in(string FilePath)
{
var file = new FileStream(FilePath, FileMode.Open, FileAccess.Read);//FilePath为文件的路径带名字,FileMode.Open为打开文件,FileAccess.Read为以只读的方式打开
var excel = Excel.ExcelReaderFactory.CreateOpenXmlReader(file);
var dataset = excel.AsDataSet();//将表格导出为dataset格式
//循环插入数据到数据库
Model.production model = new Model.production();
BLL.production bll = new BLL.production();
int i = 0;
var lujing = HttpContext.Current.Session["lujing"].ToString();
foreach (DataRow dr in dataset.Tables[0].Rows)
{
if (i != 0 && lujing!="")
{
DataTable dt = new DataTable();
dt = new BLL.production().GetList_pro(" production_id=" + dr["Column1"]).Tables[0];
int n = int.Parse(dt.Rows.Count.ToString());
if (n == 0)
{
model.channel_id = 20;
model.category_id = 83;
model.production_id = int.Parse(dr["Column1"].ToString());
model.pmzc = dr["Column2"].ToString();
model.title1 = dr["Column3"].ToString();
model.author = dr["Column4"].ToString();
model.img_url1 = lujing + dr["Column5"].ToString();
model.size = dr["Column6"].ToString();
model.creation_year = dr["Column7"].ToString();
model.judge = dr["Column8"].ToString();
if (!string.IsNullOrEmpty(dr["Column10"].ToString()))
{
model.explain_1 = dr["Column10"].ToString();
}
model.explain_2 = dr["Column11"].ToString();
model.sort_id = 99;
if (bll.Add(model) < 1)
{
}
}
else {
foreach (DataRow item in dt.Rows)
{
Model.production model_1 = bll.GetModel(int.Parse(item["id"].ToString()));
model_1.price_1 = dr["Column9"].ToString();
if (bll.Update(model_1))
{
}
}
}
}
i++;
}
}
红色部分为引入包后的初始化
利用ExcelDataReader封装类 导入表格数据的更多相关文章
- MySql 利用mysql&mysqldum导入导出数据
MySql 利用mysql&mysqldum导入导出数据 by:授客 QQ:1033553122 测试环境 Linux下测试,数据库MySql 工具 mysqldump,该命令位于mysq ...
- Visual Studio 2010利用libxl读写excel表格数据
C++读写数据,一般通过txt文件,但是随着数据量的增大,采集数据时运用excel表格的优势得以逐步体现.本文主要介绍一下运用第三方库libxl,对excel表格数据进行读写.分为三个部分,第一部分是 ...
- 简析将shp导入Oracle并利用geoserver将导入的数据发布
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.环境准备 1.1 软件准备 首先要安装有支持空间数据的Oracle ...
- Python利用xlutils统计excel表格数据
假设有像上这样一个表格,里面装满了各式各样的数据,现在要利用模板对它进行统计每个销售商的一些数据的总和.模板如下: 代码开始: 1 #!usr/bin/python3 2 # -*-coding=ut ...
- 利用EasyExcel进行对表格数据的写入
一导入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</ ...
- Thinkphp5+PHPExcel实现批量上传表格数据功能
http://www.jb51.net/article/129262.htm 1.首先要下载PHPExcel放到vendor文件夹下,我的路径是:项目/vendor/PHPExcel/,把下载的PHP ...
- Thinkphp5+PHPExcel实现批量上传表格数据
1.首先要下载PHPExcel放到vendor文件夹下,我的路径是:项目/vendor/PHPExcel/,把下载的PHPExcel文件放在这里 2.前端代码 <!DOCTYPE html> ...
- (超级详细版)利用ThinkPHP3.2.3+PHPExcel实现将表格数据导入到数据库
请先阅读以下步骤再到结尾下载源码 第一步:下载 thinkphp_3.2.3 和 PHPExcel_1.8.0 并解压 对应的网站分别为: http://www.thinkphp.cn/down.ht ...
- 利用TOAD实现把EXCEL数据导入oracle数据库
利用TOAD实现把EXCEL数据导入oracle数据库 工具: Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...
随机推荐
- 模拟log4j获取日志对象调用所在的类名、方法名及行号
当我们在记录日志时,每个类中会定义一个日志对象,然后利用这个对象去写日志,那么我们在处理日志时,如何能才能记录日志对象所在的类.方法和行号呢?log4j中已经实现了该功能,那么它是怎么实现的呢? 其实 ...
- onConfigurationChanged is not called&& 翻转屏幕不执行onConfigurationChanged方法&&onConfigurationChanged不执行
我总结出一句话: 如果target sdk>=13,必须使用如下方式声明activity:android:configChanges="orientation|screenSize&q ...
- LOCK TABLES
http://blog.csdn.net/zyz511919766/article/details/16342003 http://blog.csdn.net/zyz511919766/article ...
- Android概览
1.1 Android的开发缘由 早起的移动电话单单只具有手机的功能,并没有追求更多的追求功能和游戏娱乐.而在诺基亚提供的“贪吃蛇”游戏集成获得巨大成功的时候,手机制造商们才意识到手机 ...
- Linux内核文档翻译之Squashfs文件系统
转载:http://blog.csdn.net/gqb_driver/article/details/12946629 对于使用openwrt的嵌入式系统来说,因为硬件绝大多数采用Flash,因此一般 ...
- 关于消除MySQL输入错误后的警报声
找到mysql安装目录中的 my.ini 配置文件,在[mysql]行的下面加入一行 no-beep 即可消除声音. [mysql] no-beep default-character-set=gb2 ...
- 关于android:inputType属性的说明
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content&q ...
- 关于mysql下hibernate实体类字段与数据库关键字冲突的问题
好久没写了,都忘记博客了,趁着现在还在公司,写的东西是经过验证的,不是在家凭记忆力写的,正确率有保障,就说说最近遇到的一件事情吧. 以前一直用的oracle数据库,这次项目我负责的模块所在的系统是用的 ...
- IOS webView快照
这个功能就是对网页的存储,存储成png格式的图片 且不失真 很棒的一个小方法.具体实现如下: - (void)webViewDidFinishLoad:(UIWebView *)webView1 { ...
- 关于 2dx v3.7 UIScale9Sprite的bug
关于 2dx v3.7 UIScale9Sprite的bug 刚把引擎从js binding v3.0升级到v3.7,发现了一些bug,这里先说说关于scale9sprite的 1. 关于capIns ...