C#操作Excel文件(读取Excel,写入Excel)
看到论坛里面不断有人提问关于读取excel和导入excel的相关问题。闲暇时间将我所知道的对excel的操作加以总结,现在共享大家,希望给大家能够给大家带了一定的帮助。
另外我们还要注意一些简单的问题1.excel文件只能存储65535行数据,如果你的数据大于65535行,那么就需要将excel分割存放了。2.关于乱码,这主要是字符设置问题。
1.加载Excel(读取excel内容)返回值是一个DataSet
//加载Excel
public static DataSet LoadDataFromExcel(string filePath)
{
try
{
string strConn;
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
OleDbConnection OleConn = new OleDbConnection(strConn);
OleConn.Open();
String sql = "SELECT * FROM [Sheet1$]";//可是更改Sheet名称,比如sheet2,等等
OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
DataSet OleDsExcle = new DataSet();
OleDaExcel.Fill(OleDsExcle, "Sheet1");
OleConn.Close();
return OleDsExcle;
}
catch (Exception err)
{
MessageBox.Show("数据绑定Excel失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
return null;
}
}
2.写入Excel内容,参数:excelTable是要导入excel的一个table表
public static bool SaveDataTableToExcel(System.Data.DataTable excelTable, string filePath)
{
Microsoft.Office.Interop.Excel.Application app =
new Microsoft.Office.Interop.Excel.ApplicationClass();
try
{
app.Visible = false;
Workbook wBook = app.Workbooks.Add(true);
Worksheet wSheet = wBook.Worksheets[1] as Worksheet;
if (excelTable.Rows.Count > 0)
{
int row = 0;
row = excelTable.Rows.Count;
int col = excelTable.Columns.Count;
for (int i = 0; i < row; i++)
{
for (int j = 0; j < col; j++)
{
string str = excelTable.Rows[i][j].ToString();
wSheet.Cells[i + 2, j + 1] = str;
}
}
}
int size = excelTable.Columns.Count;
for (int i = 0; i < size; i++)
{
wSheet.Cells[1, 1 + i] = excelTable.Columns[i].ColumnName;
}
//设置禁止弹出保存和覆盖的询问提示框
app.DisplayAlerts = false;
app.AlertBeforeOverwriting = false;
//保存工作簿
wBook.Save();
//保存excel文件
app.Save(filePath);
app.SaveWorkspace(filePath);
app.Quit();
app = null;
return true;
}
catch (Exception err)
{
MessageBox.Show("导出Excel出错!错误原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
return false;
}
finally
{
}
}
转载的朋友请一定注明出处谢谢!http://blog.csdn.net/gisfarmer/
C#操作Excel文件(读取Excel,写入Excel)相关推荐
- java struts2 excel上传_文件上传方法,使用Struts2,实现Excel文件读取并写入数据库技术...
文件上传方法,使用Struts2,实现Excel文件读取并写入数据库技术 如题:文件信息的批量导入-- 项目中经常会遇到客户的一些单表信息的数据批量导入,也就是提供定制Excel表,再把Excel表中 ...
- python写入excel文件 保存_python:写入 Excel 文档
创建并保存 Excel 文档 : import openpyxl,os os.chdir('D://练习') wb=openpyxl.Workbook() wb.sheetnames 输出:['She ...
- 01-使用EasyExcel读取和写入Excel文件
一.EasyExcel介绍 Java解析.生成Excel比较有名的框架有Apache poi.jxl.但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内 ...
- python读取excel内容和写入_Python读取和写入Excel文件
制作Excel表 常用方法说明 Workbook类 Workbook类创建一个XlswWrite的Workbook对象,相当于创建一个excel表 And_worksheet()用来创建工作表,默认为 ...
- C#按Excel 规则读取、写入CSV文件,放入DataTable,再读取、写入dataGridView内。包含解析转义字符,首行判断,转换完成信号等。
CSV文件有很多规则,主要是处理逗号(,)和双引号(")的方法不同,这里按Excel 规则解析转义字符.主要规则为: 1.有逗号(,)或开头为双引号(")的字符串在保存时前后加双引 ...
- python之读取、写入 excel 文件
本文主要讨论如何使用 python 读取.写入 excel 文件.如有表述不当之处欢迎批评指正.欢迎任何形式的转载,但请务必注明出处. 目录 1. 引言 2. 读取 Excel 文件 3. 写入 Ex ...
- matlab读数据写入excel文件路径,MATLAB读取和写入Excel文件
clc; clear all; [numeric_data text_data rawdata] = xlsread('aaa.xls'); headings = rawdata(1,:) % ge ...
- Java使用POI读取和写入Excel指南
Java使用POI读取和写入Excel指南 做项目时经常有通过程序读取Excel数据,或是创建新的Excel并写入数据的需求: 网上很多经验教程里使用的POI版本都比较老了,一些API在新版里已经废弃 ...
- Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行足矣
Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行搞定 一.资源 在这里设置lombok会遇到一个问题,以前在springboot那里都没遇到, ...
- python3读取excel数据-Python3读取和写入excel表格数据的示例代码
python操作excel主要用到 xlrd 和 xlwt 这两个库,xlrd读取excel表格数据, 支持 xlsx和xls格式的excel表格 :xlwt写入excel表格数据: 一.python ...
最新文章
- 对于访问IIS元数据库失败的解决方案
- win2012每次启动显示服务器管理器,win2012r2服务器管理器打开角色.功能出错
- Linux chmod给文件加执行X权限
- 死磕java_死磕JavaScript-垃圾收集机制
- NET问答: 如何避免在 EmptyEnumerable 上执行 Max() 抛出的异常 ?
- ACM之java速成
- 智能制造数字化车间的实施策略(上)
- 基于JAVA和MySQL的离散数学题库管理系统
- JDK7及早期版本Java HotSpot 虚拟机配置选项
- 机器学习(二)对航空公司客户价值进行聚类分析
- 使用shp裁剪县区遥感影像
- html 360登录自动填写,怎么让360安全浏览器记住以前登陆过的帐号和密码,每次都填很麻烦...
- 微信开发者工具网页h5本地开发,解决微信公众号绑定域名,本地无法调用微信api问题
- TP4056 充电电路学习借鉴
- 遮罩层 遮挡不住 flash曲线的解决办法
- 华为防火墙(VRRP)
- 一文读懂遗传算法工作原理(附Python实现)
- 标准正态分布函数表的程序实现
- 一个啥也不是的鬼畜视频创作示例
- 织足袜子机报道:全国棉花收购价低于去年 加工量同比大减
热门文章
- Retrofit2.0介绍使用封装
- Hey~程序员,你的桌面风格该换了
- BZOJ3755 : Pty爬山
- android安装程序后缀,【单选题】Android安装包文件简称APK,其后缀名是()
A. .apk B. .exe C. .txt D. .app...
- SOLIDWORKS 2014官方正版功能介绍
- 一篇文章告诉你大数据的重要性
- 用gethostbyname进行域名转IP问题
- 蝴蝶效应、青蛙现象、鳄鱼法则、鲇鱼效应、羊群效应、刺猬法则、手表定律、破窗理论、二八定律、木桶理论、马太效应
- 统一社会信用代码正则表达式
- 快捷餐饮之店家后台订单管理实现