读取、写入excel数据

在实际项目中,不可避免的会操作excel表格。一直以来都是读取excel表格,可今天为了写入excel表格,可是煞费苦心,终于完成,记录下来以便后续使用。

1、读取excel表格的数据

读取excel数据,然后导入到数据库中,根据常识,只要是能得到一个dataset,那所有的问题便迎刃而解了。下面将读取excel数据得到dataset:

public DataSet ExecleDs(string filenameurl)
        {
            string strConn = "Provider=Microsoft.ACE.OleDb.12.0;" + "data source=" + filenameurl + ";Extended Properties=‘Excel 12.0; HDR=YES; IMEX=1‘";
            OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();
            DataSet ds = new DataSet();
            string strSql = string.Format("SELECT * FROM [{0}$]", "Sheet1");
            OleDbDataAdapter odda = new OleDbDataAdapter(strSql, conn);
            odda.Fill(ds, "hou");
            return ds;
        }

2、写入数据到excel表格

首先加入两个引用:

using System.Reflection; using Microsoft.Office.Interop.Excel;

1)初始化:

object missing = Missing .Value ;
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();//实例化excel对象
 Microsoft.Office.Interop.Excel.Workbook rsBook = excel.Workbooks.Open(fullFileName, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);//打开目标文件
Microsoft.Office.Interop.Excel.Worksheet excelSheet = (Microsoft.Office.Interop.Excel.Worksheet)rsBook.Sheets.get_Item(1);//设置第一个工作薄
                excelSheet.Activate();//激活当前工作簿

2)写入数据:

for (int i = 1; i < 5; i++)
                {
                    excelSheet.Cells[i, 1] = i;
                    excelSheet.Cells[i, 2] = i + 5;
                    excelSheet.Cells[i, 3] = i + 10;
                }

注:excel表格的第一行、第一列都是以1开始的。

3)保存excel文件、设置Application的属性,并回收资源

rsBook.Save();

                excel.DisplayAlerts = false;
                excel.Visible = true;

                excelSheet = null;
                rsBook = null;
                excel = null;

                GC.Collect();
                GC.WaitForPendingFinalizers();
                GC.Collect();
                GC.WaitForPendingFinalizers();

读取、写入excel数据

时间: 2024-08-02 10:02:03

读取、写入excel数据的相关文章

按键精灵如何调用Excel及按键精灵写入Excel数据的方法教程---入门自动操作表格

首先来建立一个新的Excel文档,在桌面上点击右键,选择[新建]-[Excel工作表],命名为[新手学员]. 现在这个新Excel文档是空白的,我们接下来会通过按键精灵的脚本来打开并写入一些数据.打开按键精灵软件,点击[新建],进入我的脚本界面,再点击进入[全部命令].在[全部命令]中选择[插件命令]-[office办公文档插件]-[打开Excel文档].在命令的下面可以看到命令的详细设置,点击[路径].在弹出窗口中选择[新手学员]的Excel文档,点击打开.可以在命令参数中看到引用的文档,点击

sql sever读取写入Excel总结

主要用到openrowset,opendatasource系统函数,这两个函数任意一个都能完成任务 用这种方法可以实现Excel和sqlserver表之间的相互导入导出. 如果使用openrowset报错,可以参看这篇文章http://www.cnblogs.com/xiashengwang/p/3511808.html openrowset的写法 --3,链接Excel Microsoft Jet 4.0 OLE DB Provider--读Excel数据,注意Excel必须事先关闭selec

c# 读取和写入excel数据

1. 读取 DataTable GetDataFromExcelByConn(bool hasTitle = false){    OpenFileDialog openFile = new OpenFileDialog();    openFile.Filter = "Excel(*.xlsx)|*.xlsx|Excel(*.xls)|*.xls";    openFile.InitialDirectory = Environment.GetFolderPath(Environmen

使用NPOI写入Excel数据(ASP.NET)

第一次做这个写入数据的功能,研究了下npoi的类 IWorkbook wb = new HSSFWorkbook(); //创建表 ISheet sh = wb.CreateSheet("XXX"); //设置单元的宽度 sh.SetColumnWidth(0, 20 * 256); #region 合并单元格 IRow row0 = sh.CreateRow(0); row0.Height = 20 * 20; ICell icell1top0 = row0.CreateCell(0

读取写入excel单元格

以下是一些对excel的一些基本操作 1:工程对excel类库的导入,如:c:\program files\Microsoft office\offiece11\excel.exe2:命名控件的引入: using Microsoft.office.Interop.Excel; 3:如果是对一个已经存在的excel文件进行操作则:Application app=new Application();Workbook wbook=app.Workbooks.Open("c:\\temp.xls&quo

Java使用POI读取和写入Excel指南

Java使用POI读取和写入Excel指南 做项目时经常有通过程序读取Excel数据,或是创建新的Excel并写入数据的需求: 网上很多经验教程里使用的POI版本都比较老了,一些API在新版里已经废弃,这里基于最新的Apache POI 4.0.1版本来总结一下整个读取和写入Excel的过程,希望能帮助到需要的人 ^_^ 1. 准备工作 1.1 在项目中引入Apache POI相关类库 引入 Apache POI 和 Apache POI-OOXML 这两个类库,Maven坐标如下: <depe

POI读取Excel数据保存到数据库,并反馈给用户处理信息

今天遇到这么一个需求,将课程信息以Excel的形式导入数据库,并且课程编号再数据库中不能重复,也就是我们需要先读取Excel提取信息之后保存到数据库,并将处理的信息反馈给用户.于是想到了POI读取文件提取数据,也可以利用Jxl读取Excel提取数据. 最终效果: 对于下面的Excel,总共20条数据.18条在数据库已经存在,最后两条是在同一个excel文件中重复在数据库不存在. 反馈结果:(也就是最后两个X6511只保存了一条) 思路: 1.先将Excel文件上传到本地,保存到本地磁盘 2.读取

PHPExcel将Excel数据导入数据库

1 <?php 2 //PHPExcel读取导入Excel数据到数据库(2003,2007通用)使用方法: 3 //先用excel2array()方法将excel表中的数据存储到数组,在从遍历二维数组将数据保存进数据库 4 require_once "./PHPExcel.class.php"; 5 require_once "./PHPExcel/Cell/DataType.php"; 6 require_once "./PHPExcel/IOFa

用python从符合一定格式的txt文档中逐行读取数据并按一定规则写入excel(openpyxl支持Excel 2007 .xlsx格式)

前几天接到一个任务,从gerrit上通过ssh命令获取一些commit相关的数据到文本文档中,随后将这些数据存入Excel中.数据格式如下图所示 观察上图可知,存在文本文档中的数据符合一定的格式,通过python读取.正则表达式处理并写入Excel文档将大大减少人工处理的工作量. 1. 从gerrit获取原始信息,存入文本文档: $ssh –p 29418 <your-account>@192.168.1.16 gerrit query status:merged since:<date