两个关于.NET读取EXCEL文件的问题,记下来,很有用!
今天有个同事问我个问题,他在用C#“Microsoft.Jet.OLEDB.4.0”读取EXCEL文件的时候,发现了一个问题,是这样的,他读出来的EXCEL数据在DATAGRID中显示的时候,只有文本的数据能够读出来,比如某一个单元格里面的数据是纯数字的话,那么在DATAGRID里面显示的空的,什么都没有,他让我看看,我找了好半天的原因没有找到,后来实在没有办法,就换个方法读,用COM组件,引用了EXCEL组件之后,Excel.Applicatioin ea=new Excel.ApplicationClass();执行的时候就报错,“访问被拒绝”,发现了这样两个问题,今天晚上找了好半天的方法,终于解决了。
1,用Microsoft.Jet.OLEDB.4.0读取EXCEL数据的代码是这样的:
string ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/aa.xls;Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";
OleDbConnection Conn=new OleDbConnection(ConnStr);
Conn.Open();
string SQL="select * from [sheet1$]";
OleDbDataAdapter da=new OleDbDataAdapter(SQL,ConnStr);
DataSet ds=new DataSet();
da.Fill(ds);
DataGrid1.DataSource=ds;
DataGrid1.DataBind();
很简单的代码,但是问题就出在连接字符串上面,后面一定要加上Extended Properties='Excel 8.0;HDR=NO;IMEX=1',HDR和IMEX也一定要配合使用,哈哈,老实说,我也不知道为什么,这样配合的效果最好,这是我艰苦调试的结果.IMEX=1应该是将所有的列全部视为文本,我也有点忘记了.至于HDR本来只是说是否要出现一行标题头而已,但是结果却会导致某些字段值丢失,所以其实我至今也搞不明白为什么,很可能是驱动的问题...
2,
结点,这个结点的用途见ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpgenref/html/gngrfIdentitySection.htm
还有个问题,加入在页面中对EXCEL进行了操作,需要保存的时候,当创建一个新的文档或者保存一个修改过的文档时:
代码是:test.SaveAs (ConfigurationSettings.AppSettings["Excel"] + DocName.Text + ".xls");
出现如下错误:
无法打开宏储存。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Runtime.InteropServices.COMException: 无法打开宏储存。
解决方法:
在运行中输入dcomcnfg
在组件服务==>计算机==>我的电脑DCOM找到:
打开之后出现下面的界面,
点访问权限,
看到上面的界面之后大家该知道怎么做了吧,添加了aspnet用户,然后给权限就OK了
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=789193
转载于:https://www.cnblogs.com/tt98/archive/2008/03/26/1123837.html
两个关于.NET读取EXCEL文件的问题,记下来,很有用!相关推荐
- Python使用pandas读取两个或者多个excel文件(xlsx)并进行数据连接(join)合并两个或者多个excel的信息
Python使用pandas读取两个或者多个excel文件(xlsx)并进行数据连接(join)合并两个或者多个excel的信息 目录
- Python+Pandas读取Excel文件分析关系最好的两个演员
董老师又双叒叕送书啦,6本<Python程序设计基础与应用(第2版)> 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国 ...
- Ruby读取Excel文件的两种方法
用Ruby读取Excel文件的两种重要方式 1. 通常做法,查阅微软提供的API了,需要包含win32, 在ruby前加入,require 'win32ole' 例如: require 'win32o ...
- C#读取excel文件数据丢失问题
最近在处理C#读取excel文件时碰到了个BT问题,有部分数据读取失败了,翻看了不少资料,终于找到了问题的所在,所以在这里跟大伙分享下: 简要问题分析: 用C#读取excel文件数据时,出现数据丢失现 ...
- matlab显示服务器出现意外,Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决...
1.问题描述: 该错误通常发生在应用函数读取excel文件(后缀xls或xlsx)时. 应用xlsread函数读取提示服务器出现意外情况: 应用importdata读取时提示can't open fi ...
- 转:C#读取Excel文件 (2009年9月28日)
原文:刘武|c#如何读取excel文件 使用OLEDB可以对excel文件进行读取,我们只要把该excel文件作为数据源即可. 一 在D盘创建excel文件test.xls: 二 将工作表Sheet1 ...
- php读取excel文件_php读取EXCEL文件 php excelreader读取excel文件
php开发中肯定会遇到将excel文件内容导入到数据库的需要,php-excel-reader是一个读取excel的类,可以很轻松的使用它读取excel文件非常方便. 我下载的是php-excel-r ...
- 使用POI读取excel文件内容
1.前言 项目中要求读取excel文件内容,并将其转化为xml格式.常见读取excel文档一般使用POI和JExcelAPI这两个工具.这里我们介绍使用POI实现读取excel文档. 2.代码实例: ...
- php原生读取excel文件夹,原生php实现excel文件读写的方法分析php技巧
这篇文章主要介绍了原生php实现excel文件读写的方法,结合实例形式分析了采用原生php针对Excel进行读写操作的相关实现方法与操作注意事项,需要的朋友可以参考下 本文实例分析了原生php实现ex ...
最新文章
- python的异常机制
- Kotlin实战指南十二:data class
- LeetCode 974. 和可被 K 整除的子数组(哈希map)
- ISA SERVER 2004之配置网络负载平衡(NLB)
- Windows Mobile如何得到资源文件中的文件
- SqlServer事务回滚失败
- idea 代码格式化快捷方式
- 手机网页底部广告代码,悬浮底部广告,带关闭开关,复制文字,按钮
- 华为php工程师待遇,【博士Offer求比较】211vs华为vs半导体设备商 - 找工作啦(Job)版 - 北大未名BBS...
- 彼得林奇:全球理财师中的NO.1
- go-http server使用hijack接管连接的管理
- 阴历转换阳历c语言csdn,JavaScript实现公历转换农历
- Java复习:确定给定日期是一年的第几天
- 简明扼要:numpy.random.seed()用法
- ANSYS FLUENT 超临界流体物性分段线性插值数据批量导入
- DiI(细胞膜红色荧光探针)被广泛应用于神经等细胞或组织的示踪剂或长期示踪剂
- 傻瓜攻略(九)——MATLAB实现简单的多元线性回归(以炼钢转炉炉龄问题为例)
- 网站底部添加备案号和链接
- 豆浆!——骑上广东第一峰看看日出
- 拯救视频模糊感,一些视频画质修复的小妙招
热门文章
- 所有竞争,本质都是“硬核能力”之争
- 《GTA 5》走进现实!AI逼真还原游戏街景,还能“脑补”细节 | 英特尔出品
- 2021年AI关键趋势,AI芯片初创公司可能发生并购
- 了解因果论:从珀尔的《为什么》开始
- 工业富联:左手工业AI,右手“雾小脑”
- 上海人工智能再出重磅!寒武纪科技发布新一代云端AI芯片,联想、曙光、科大讯飞发布相关应用...
- 代数拓扑的数学方法正在变革脑科学
- 如何测量智能产品的AI智商水平,论AI的三种智商 |未来研究
- Java 全能手册火了!Redis/Nginx/Dubbo/Spring 全家桶/啥都有
- 2019-05-26 Java学习日记之Set集合