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封装类 导入表格数据的更多相关文章

  1. MySql 利用mysql&mysqldum导入导出数据

    MySql 利用mysql&mysqldum导入导出数据 by:授客 QQ:1033553122   测试环境 Linux下测试,数据库MySql 工具 mysqldump,该命令位于mysq ...

  2. Visual Studio 2010利用libxl读写excel表格数据

    C++读写数据,一般通过txt文件,但是随着数据量的增大,采集数据时运用excel表格的优势得以逐步体现.本文主要介绍一下运用第三方库libxl,对excel表格数据进行读写.分为三个部分,第一部分是 ...

  3. 简析将shp导入Oracle并利用geoserver将导入的数据发布

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.环境准备 1.1 软件准备 首先要安装有支持空间数据的Oracle ...

  4. Python利用xlutils统计excel表格数据

    假设有像上这样一个表格,里面装满了各式各样的数据,现在要利用模板对它进行统计每个销售商的一些数据的总和.模板如下: 代码开始: 1 #!usr/bin/python3 2 # -*-coding=ut ...

  5. 利用EasyExcel进行对表格数据的写入

    一导入依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</ ...

  6. Thinkphp5+PHPExcel实现批量上传表格数据功能

    http://www.jb51.net/article/129262.htm 1.首先要下载PHPExcel放到vendor文件夹下,我的路径是:项目/vendor/PHPExcel/,把下载的PHP ...

  7. Thinkphp5+PHPExcel实现批量上传表格数据

    1.首先要下载PHPExcel放到vendor文件夹下,我的路径是:项目/vendor/PHPExcel/,把下载的PHPExcel文件放在这里 2.前端代码 <!DOCTYPE html> ...

  8. (超级详细版)利用ThinkPHP3.2.3+PHPExcel实现将表格数据导入到数据库

    请先阅读以下步骤再到结尾下载源码 第一步:下载 thinkphp_3.2.3 和 PHPExcel_1.8.0 并解压 对应的网站分别为: http://www.thinkphp.cn/down.ht ...

  9. 利用TOAD实现把EXCEL数据导入oracle数据库

    利用TOAD实现把EXCEL数据导入oracle数据库 工具:   Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...

随机推荐

  1. 苹果iOS手机暗藏间谍软件的揭秘者:扎徳尔斯基

    大家知道,苹果iOS手机的短消息server(SMS)是用硬件加密的,看起来非常安全.可是,Jonathan Zdziarski发现苹果公司有意地放进去一个"文件转发server" ...

  2. 【JavaScript】JavaScript脚本代码的位置及在页面中的执行顺序

    三.如何改变Javascript在页面的执行顺序 利用onload <script type="text/javascript">window.onload = f; ...

  3. iOS iphone5屏幕适配 autosizing

    转自:http://blog.sina.com.cn/s/blog_a843a8850101jxhh.html iphone5出来了,从不用适配的我们也要像android一样适配不同分辨率的屏幕了. ...

  4. SQL server connection KeepAlive[转]

    1.什么是SQL server TCP连接的keep Alive? 简单说,keep alive 是SQL server在建立每一个TCP 连接的时候,指定了TCP 协议的keepaliveinter ...

  5. 进程间通信和同步:pipe、FIFO、消息队列、信号量、共享内存、信号

    一.半双工管道(pipe) 关于管道详细介绍可参考http://www.cnblogs.com/nufangrensheng/p/3560130.html. 1.管道实现父子进程间通信实例: /* p ...

  6. android studio 预览保持,因为是SDK版本过高,可以点击小图标机器人修改SDK版本号。

    Exception raised during rendering: com/android/util/PropertiesMap

  7. MUI功能列表

    打开App引导页面 - http://www.bcty365.com/content-146-4970-1.html 页面传值   - http://www.bcty365.com/content-1 ...

  8. Steps to Install Hadoop on CentOS/RHEL 6---reference

    http://tecadmin.net/steps-to-install-hadoop-on-centosrhel-6/# The Apache Hadoop software library is ...

  9. iOS---》点击uitableview 的section展开或隐藏

    #import <UIKit/UIKit.h> @interface TestCell : UITableViewCell @property (weak, nonatomic) IBOu ...

  10. jsp中调用getOutputStream()产生冲突

    再用jsp进行图片的生成的时候,例如一些验证码,比例图的时候,在对图片进行输出调用 getOutputStream() 的时候会报该方法已经被调用的冲突. 例如如下的程序: <%@ page c ...