The TypeGuessRows setting is supported by ACE. Note the version numbers in the key may change depending upon the version of Office installed. For 32-bit Windows (32-bit Office):HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\12.0\Access Conn…
1.引言 在应用程序的设计中,经常需要读取Excel数据或将Excel数据导入转换到其他数据载体中,C#读取Excel的方式有两种,一种是通过OLEDB方式读取,另一种为通过COM组件方式读取.近段时间有客户反映,读取到程序中的Excel表,出现部分数据丢失的情况,笔者在此采用的是第一种方式读取(第二种读取比较慢,且不易控制),于是检查代码还有各种找资料,终于解决了该问题,在此记录导致丢失的原因及解决方法. 2.丢失原因 问题的根源与Excel ISAM(Indexed Sequential A…
/// <summary> /// 使用OLEDB读取excel和csv文件 /// </summary> /// <param name="path">文件所在目录地址</param> /// <param name="name">文件名</param> /// <returns></returns> public static DataSet ReadFile(str…
进入博客园后台发现12年11月份写的草稿没发,时隔1年,把它拉出来晒晒太阳. 前言 第一次做Excel文件导入,采用了oledb,不足之处,还请各位大牛指出,谨以此文对导入Excel做个总结. 一般步骤 实际上,读取Excel文件和读取数据库是一样的,毕竟Excel也是数据源的一种.读取Excel的一般步骤为: 1.引入相关命名空间,此处引入: using System.Data; using System.Data.OleDb; 2.设置连接字符串: private static string…
var tables = con.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { }); Tables.Colmuns Tables.Rows 我的Excel有四个工作表,只有sourceData有数据,但是这里却出现了五行,有点想不通. 多出来的一行是这样的,有大神可以给我解释解释.…
问题描述:在使用oledb方式将excel数据导入到datagridview中,在datagridview单元格中的数据没有显示全,似乎只截取了数据源中的一段 解决方案:1.关于该问题,微软官方答案:http://support.microsoft.com/kb/189897,该方法无法彻底解决问题  2.我目前的解决方法是将TypeGuessRows改为0,该问题目前得到解决 个人理解:在数据导入的过程中,Microsoft Excel ODBC 驱动程序默认情况下会扫描前8行的数据,如果前8…
1.问题出现 在开发应用程序的过程中,比较常用一功能就是通过oledb驱动读取excel.csv.text等文件:而最近有客户反映,在使用短信平台(下载地址:http://www.sms1086.com/product/detail-150.html),发现出现以下问题: 还有一种情况,excel只能导入部分,而其他的导入不进去. 而其他excel或text文件,不会出现此类问题.但是将有问题的excel粘贴到新建的文件中,还会出现类似问题. 2.网上解答 在博客园http://www.cnbl…
笔者在项目中做做了一个从Excel表格中导入数据的模块.大体上asp.net项目中导入Excel大体分成三类: 1)采用c#内置方案System.Data.OleDb(限制较小, 通用) 2)采用Excel的COM组件(会有版本问题) 3)采用伪Excel文件.即使用文本流的方式根据需求自己定义数据格式.同时在服务端进行反格式化 笔者采用的是方案一.相关联开发环境如下: Windows 7(x64) Visual Studio 2010 方案中使用的代码: public sealed class…
最近再升级 pyserial模块时,采用 pip install --upgrade pyserial,待模块下载完成准备卸载原版本时 提示:“Cannot uninstall 'pyserial'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall. ”…
解决方法: 找到C:\Windows\Temp 目录,在其属性->安全->编辑->添加 IIS_IUSERS用户 赋予"完全控制"权限 ...注意:这可能不是最佳方案,如果有其他方法 或 赋予IIS_IUSERS用户 "完全控制"权限,会有其他什么隐患呢?请大家指出一下..…
主要运用表类型 Create table BulkTestTable( Id nvarchar(), UserName nvarchar(), Pwd nvarchar() ) Go CREATE TYPE BulkUdt AS TABLE (Id nvarchar(), UserName nvarchar(), Pwd nvarchar() ) C#端读取Excel /// <summary> /// 读取Excel中数据 /// </summary> /// <param…
错误描述: 在VS2010执行读取excel文件时,报错"未在本地计算机上注册"Microsoft.ACE.OLEDB.12.0"提供程序" 业务代码: //下面代码是基于窗体button来做的,如果使用需要转为控制台 private void btnOpen_Click(object sender, EventArgs e) { DataSet myds = new DataSet(); OpenFileDialog openFiledialog1 = new O…
最近在搞asp.net.今天在做数据库操作的时候,老发生错误,还以为是自己代码有问题,检查了好久都发现错误. 错误提示: 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.InvalidOperationException: 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序.…
在开发的一个报表转换功能涉及到Excel97-2003(.xls)文件的导入.使用oledb来读取excel数据.代码为: public static DataSet LoadDataFromExcel(string filePath, string[] sheetNames) { string strConn; // strConn = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + filePath + "…
转载:http://blog.sina.com.cn/s/blog_53864cba01011cbn.html   前些日子,写了一个Excel导入数据库的共同Batch,突然有一天发现当我修改Excel某一列的值的时候突然读不出来值了.奇怪之余,做了一些调研. 原来如此: 当我们用OleBb读取Excel的时候,如果没有配置IMEX=1的属性,微软的处理机制是将列转换为同一类型来读取的.例如你在第一行写的数字格式,而第二行写的字符格式,就会出现某些列有值却读不出来.其实问题也很简单,如果知道问…
一:OLEDB方式操作Excel的个人理解 就是把要操作的Excel当作一个数据库,所有对Excel的操作,就变成了对“数据库”的操作.那么这时就需要有一个数据库的连接字符串. 代码如下: connStr = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + strFileName + ";" + ";Extended Properties=\"Excel 12.0…
参考: pydot and graphviz error: Couldn't import dot_parser, loading of dot files will not be possible NameError: global name 'dot_parser' is not defined 解决方法 在使用pydot包时发现dot_parser未在程序中定义: Couldn't import dot_parser, loading of dot files will not be po…
工作需要读取excel里面的行内容,使用java实现较为简单. 在最开始,尝试使用 jxl-2.6.12 来实现读取excel 的行内容.但是按照网上的方法,程序根本无法正确处理文件流.经过谷姐的一番努力,发现jxl只能支持excel 2000而已(或许我用的方法有误).jxl 操作excel 2007 无望,无奈放弃之. 之后转到apache 的poi 库,看到它的文档里面说到,都可以支持office 2010了,对于2007 应该不在话下.果断转投poi 的怀抱. poi官方网址:http:…
https://support.microsoft.com/zh-cn/help/189897/data-truncated-to-255-characters-with-excel-odbc-driver Microsoft.ACE.OLEDB.12.0 驱动读取excel,会读取前8行来判定每列的数据类型,假如没有超过255个字符,那么会被设置为nvarchar(255),从第9行开始,超过255字符会被自动截断! 推荐使用第三方库:https://github.com/ExcelDataR…
学习c++过程中,遇到在VC中使用set时DEBUG模式出现的警告 identifier was truncated to '255' characters in the debug information 网上找了下,发现如下解决办法 转自:http://hi.baidu.com/ncutlw/blog/item/a8a356165f57ae4d20a4e9b1.html 前段时间使用VC6中STRING,VECTOR时DEBUG模式出现的警告, 大概判断应该是调试时一些类调用后导致名字过长,…
linux环境到处Excel报错: The maximum column width for an individual cell is 255 characters 解决方案: for (int i = 0; i < headerList.size(); i++) { int colWidth = sheet.getColumnWidth(i)*2; if(colWidth<255*256){ sheet.setColumnWidth(i, colWidth < 3000 ? 3000…
转载于:http://developer.51cto.com/art/200908/142392.htm C#读取Excel文件可以通过直接读取和OleDb连接,把excel文件作为数据源来读取:     C#读取Excel文件方法二:通过OleDb连接,把excel文件作为数据源来读取(这里是fill进dataset,也可以返回OleDbDataReader来逐行读,数据较快) 注:这种方法容易把混合型的字段作为null值读取进来,解决办法是改造连接字符串 strConn = "Provide…
这是我第一次在博客上写东西,简单的为大家分享一个oledb读取文件的功能吧,这两天在做一个文件导入数据库的小demo,就想着导入前先在页面上展示一下,之前调用Microsoft.Office.Interop.*.dll的组件,代码看起来很是冗余,于是乎选择了这种方式,添加引用 using System.Data.OleDb;代码分享给大家,有什么不足或补充,希望大家多多发言,共同进步哈! /// <summary> /// 使用OLEDB读取excel和csv文件 /// </summa…
参考: How to read from an Excel file using OLEDB 为了使用方便,我做成了工具类(OledbCommon.cs),好以后使用. 注:连接字符串中,Provider=xx是从这个连接模仿,主要是考虑是否把第1行当成表头: http://www.connectionstrings.com/excel/ OledbCommon.cs类的代码: using System; using System.Collections.Generic; using Syste…
DataSet ds = new DataSet(); cl_initPage.v_DeBugLog("ExcelDataSource进入"); string strConn; strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + filepath + ";Extended Properties='Excel 12.0; HDR=No; IMEX=1'&quo…
解决方法在此: https://github.com/dbzhang800/QtXlsxWriter Documentation: http://qtxlsx.debao.me QtXlsx is a library that can read and write Excel files. It doesn't require Microsoft Excel and can be used in any platform that Qt5 supported. The library can b…
本方法,将传入的Excel文件内所有的Sheet内的数据都填充入DataSet中.这是一个简单快捷的方法,不足之处是不适合带有格式复杂的Excel文件.(比如:有合并单元格的) public class ExcelUtil { /// <summary> /// 从Excel文件导入DataSet /// Excel的连接字符串说明(详细参看 http://www.connectionstrings.com/excel ): /// HDR=Yes 表示第一行是表头,没有数据,读取时忽略第一行…
附带参考:http://blog.csdn.net/gongzhongnian/article/details/76438555 更详细导入导出:https://www.jianshu.com/p/74d405940305 https://www.jianshu.com/p/044c183edf42 ///////////////////////////////////////////////////////////////////////////////////////////////////…
NPOI读取Excel(2003或者2010)返回DataTable.支持公式解析,空行处理. /// <summary>读取excel /// 默认第一行为表头 /// </summary> /// <param name="strFileName">excel文档绝对路径</param> /// <param name="rowIndex">内容行偏移量,第一行为表头,内容行从第二行开始则为1</…
在Windows Server 2008 x64 上部署一个Vs 2008开发的.net2.0 的asp.net web 程序,调用了office的组件来导入导出excel文件,其中托管管道模式为集成. 出现了一个错误:未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序 解决方法1:“设置应用程序池默认属性”/“常规”/”启用32位应用程序”,设置为 true. 如下图所示: 方法二:生成->配置管理器->平台->点击Any Cpu选项卡->新建->…