我无法打开 .xlsx 文件

2024-01-07

我想打开一个 xlsx 文件,我尝试了下面的代码,但它既没有打开也没有抛出任何错误。

任何人都可以阐明它吗

string path = "C:\\examples\\file1.xlsx";
string connString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=\"Excel 12.0 Xml;HDR=YES\";");
OleDbConnection cn = new OleDbConnection(connString);
cn.Open();
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", cn);
DataTable dt = new DataTable();
adapter.Fill(dt);

2010 年 12 月,Microsoft(终于!)发布了用于 CSV 和 XLSX 文件的 64 位 OLEDB 驱动程序。

你需要 64 位。确保下载 64 位版本(AccessDatabaseEngine_X64.exe)。您需要卸载所有 32 位 Office 应用程序(包括 Sharepoint Designer!)才能安装它。

如果你想要 CSV,你会想要Microsoft Access Text Driver (*.txt, *.csv)驱动程序名称,但我还无法使用 OLEDB 中的此驱动程序找到完整的连接字符串(尽管如果您有,请留下评论,我将修改此答案)。请注意,64 位名称与 32 位版本不同。

要读取 XLSX 文件,请使用如下连接字符串:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
 + FilePath
 + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"";

对于 XLS(2007 年之前的 Excel)文件,请使用如下连接字符串:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
 + FilePath
 + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\"";

非常感谢这篇博文 http://www.arboundy.com/2010/11/the-microsoft.ace.oledb.12.0-provider-is-not-registered-on-the-local-machine/ and 这个答案 https://stackoverflow.com/questions/3454701/32-bit-text-drivers-microsoft-access-microsoft-excel-and-text-files-from-a-6/3454742#3454742当我遇到同样的问题时,为我指明了正确的方向,并提供了我适应写这个答案的内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我无法打开 .xlsx 文件 的相关文章

  • C# 中直接从 URL 获取图像尺寸

    我正在尝试使用以下代码直接从网络上获取图片的尺寸 string image http www hephaestusproject com csharp3 png byte imageData new WebClient DownloadDa
  • 如何将多个 Excel 工作表转换为 csv python

    我想转换所有的excel文档 xls 将工作表转换为 csv 如果 excel 文档只有一张工作表 那么我将进行如下转换 wb open workbook path1 sh wb sheet by name Sheet1 csv file
  • C++ 中的“int”默认是“signed long int”吗?

    Is int默认情况下signed long int in C 它是否依赖于平台和 或编译器 如果是这样 怎么办 EDIT 以下任何一项是否保证是重复的 signed short int signed int signed long int
  • 在异步请求中使用超时回调

    我之前问过这个问题 但我将用提出的解决方案来完成这个问题 并提出另一个问题 我正在使用这个类来进行异步网络请求 http msdn microsoft com en us library system net webrequest aspx
  • 何时使用 C++ 私有继承而不是组合?

    你能给我一个具体的例子吗 什么时候使用私有继承优于组合 就我个人而言 我将使用组合而不是私有继承 但在某些情况下 使用私有继承可能是特定问题的最佳解决方案 正在阅读C faq http www parashift com c faq lit
  • 尽管浮点数相同,但它们并不相等? [复制]

    这个问题在这里已经有答案了 下面的程序输出This No is not same 当两个数字相同时为什么会这样做 void main float f 2 7 if f 2 7 printf This No is same else prin
  • 如何从 C# 调用 F# 类型扩展(静态成员函数)

    FSharp 代码的结构如下 我无法控制源代码 namespace FS
  • 多线程 - 比单线程慢

    当我使用多个线程而不是单线程运行程序时 它会变慢 不是应该更快吗 该程序应该遍历从起始目录开始的所有目录 并查找并打印所有名为 X 的文件 代码如下 while done pthread mutex lock lock if list is
  • 从 Golang 调用 C 函数

    我想在 Golang 中编写控制器逻辑并处理 json 和数据库 同时在 C 中使用我的数学处理模型 在我看来 调用 C 函数的开销必须尽可能低 就像设置寄存器 rcx rdx rsi rdi 一样 执行一些操作fastcall 并获取 r
  • += 运算符在 C++ 中是如何实现的?

    这是我一直在思考的一个问题 但从未找到任何资源来说明这个问题的答案 事实上它不仅是为了 也适用于它的兄弟姐妹 即 等等 当然不是 考虑这个例子 int a 5 a 4 this will make a 9 现在考虑等效表达式 a a 4 T
  • 使用 catch all 字典属性将 json 序列化为对象

    我想使用 JSON net 反序列化为对象 但将未映射的属性放入字典属性中 是否可以 例如给定 json one 1 two 2 three 3 和 C 类 public class Mapped public int One get se
  • 主构造函数不再在 VS2015 中编译

    直到今天 我可以使用主构造函数 例如 public class Test string text private string mText text 为了能够做到这一点 在以前的 Visual Studio CTP 中 我必须将其添加到 c
  • 原子的 C++ 内存屏障

    在这方面我是个新手 谁能提供以下内存屏障之间差异的简化解释 窗户MemoryBarrier 围栏 mm mfence 内联汇编asm volatile memory 内在的 ReadWriteBarrier 如果没有简单的解释 一些好文章或
  • C# 反序列化过程中创建指向父对象的指针

    我有这样的课程 Serializable public class child public Parent parent Serializable public class Parent public List
  • 确定相关词的编程方式?

    使用网络服务或软件库 我希望能够识别与词根相关的单词 例如 座位 和 安全带 共享词根 座位 但 西雅图 不会被视为匹配 简单的字符串比较对于这类事情似乎是不可行的 除了定义我自己的字典之外 是否有任何库或 Web 服务不仅可以返回单词定义
  • 禁用实体框架的默认值生成(Code First)

    我数据库中有一个列不能为空 我想将其设置为默认值在数据库中 问题是实体框架似乎自己创建了一个默认值 例如 int gt 0 并且完全忽略了数据库中的默认值约束 有没有办法禁用实体框架的默认值 我发现您可以使用以下属性来装饰您的字段 Data
  • XCode std::thread C++

    对于学校的一个小项目 我需要创建一个简单的客户端 服务器结构 它将在路由器上运行 使用 openWRT 并且我试图在这个应用程序中使用线程做一些事情 我的 C 技能非常有限 所以我在internet https stackoverflow
  • C# 模式匹配

    我对 C 有点陌生 我正在寻找一个字符串匹配模式来执行以下操作 我有一个像这样的字符串 该书将在 唐宁街 11 号接待处 并将由主要医疗保健人员参加 我需要创建一个 span 标签来使用 startIndex 和 length 突出显示一些
  • 使用方法的状态模式

    我正在尝试使用方法作为状态而不是类来基于状态模式的修改版本来实现一个简单的状态机 如下所示 private Action
  • 包含从代码隐藏 (ASP.NET C#) 到 ASPX 中的图像概述的图像列表 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • node-mongodb-native:如何通过我的应用程序共享连接回调的 db api 对象

    我目前正在从 mongoose 回滚到 node mongodb native 所以我对这个话题很陌生 然而 我目前的问题是想要在服务器启动时创建一个数据库集合 然后我可以通过应用程序使用它 不幸的是 我只在存储库中找到了示例 您只能在连接
  • 尝试重新加载 module.pm 已中止。编译失败

    我有一个正在执行的 Perl 脚本mod perl并作为HTTP server myServer pl uses a module pm 当我与一位用户一起使用时 一切看起来都很好 但是当我将它置于数百个用户的压力下时 它给了我这个奇怪的错
  • QWidget 报告错误的宽度值

    我想查询小部件的宽度以执行一些自定义布局管理 不幸的是 无论小部件实际有多大或多小 以下代码都会返回 640 int myWidth this gt rect size width this is my class derived from
  • 为什么 video.requestPictureInPicture() 只能运行一次?

    我正在尝试通过 Javascript onscroll 函数进入和退出视频的 PIP 模式 并且我只能进入和退出此模式一次 这是我的代码笔 if myVideo paused myVideo currentTime gt 0 myVideo
  • PHP 从数字字符串中删除逗号

    在 PHP 中 我有一个全是字符串的变量数组 一些存储的值是带有逗号的数字字符串 我需要的 一种从字符串中修剪逗号的方法 并且仅对数字字符串执行此操作 这并不像看起来那么简单 主要原因是以下几点失败 a 1 435 if is numeri
  • Git Gui 不会忽略提交消息中以井号 (#) 开头的行

    当我使用git commit 以井号 开头的行将被忽略 但当我使用 Git Gui 提交时 它们不会被忽略 如同使用井号 开始 git 提交消息 https stackoverflow com questions 2788092 start
  • 使用模板的 Docusign 嵌入式签名

    我需要步骤 程序让收件人使用模板通过 NodeJS 应用程序进行签名 目前我正在使用 docusign 节点 sdk 我想通过 API 将签名嵌入到应用程序中 嵌入式签名 而不是在另一个窗口中打开 DocuSign 我建议你看一下DocuS
  • Android Vimeo 视频在 webview 中第二次播放时崩溃

    我在webview中播放vimeo视频 源代码你可以看一下 Android Vimeo 视频无法在 webview 中播放 https stackoverflow com questions 25130801 android vimeo v
  • MadExcept 在尝试最后时触发

    我正在使用 MadExcept 来调试我的应用程序 这是一个优秀的框架 但当 try finally 块发生异常时 它仍然显示那个丑陋的框 并且用户认为应用程序已经崩溃 我怎样才能删除它 有办法吗 听起来好像它正在按设计工作 try fin
  • 如何正确分发带有数据文件的 pip 包?

    我有一个要分发的包 mymodule data 1 txt mymodule init py tests test mymodule py setup py 为了将其安装在 virtualenv 下 我应用以下命令 pip install
  • 在 GoDaddy Linux 托管中部署 Web 应用程序

    我正在尝试将 laravel 应用程序部署到 godaddy linux 托管 我在引用我购买的域使用的 laravel 文件夹中的 public index 时遇到问题 我看过教程将文件移动到托管根目录 公共 的公共文件夹中 我希望尽可能
  • 是否可以设置默认的 PDO 获取模式?

    在检索数据之前 我总是必须输入 STH gt setFetchMode PDO FETCH OBJ 为了使我的代码更具可读性 如果我可以在某处设置默认模式 那就太好了 Thanks Edit 我最初希望可以将 PDO FETCH OBJ 添
  • Node.js 在同一项目中进行 React 和 Rest 路由

    我对 NodeJS 还很陌生 并且制作了一些充当休息服务的应用程序 并且我从 HTML 页面调用休息服务 我还制作了一些反应应用程序 问题 我可以将这两种类型的应用程序放在同一个应用程序中 以便我的 React 应用程序可以使用本地剩余 U
  • 对于推送通知,websocket 是必需的吗?

    我在服务器端有 PHP 在客户端有 HTML 和 javascript 我正在制作一个应用程序 利益相关者可以在其中输入一条消息 该消息会实时广播到一个组的多个接收者 我在 google 上做了一些研究 我知道我需要使用 WebSocket
  • 是否可以使用 GWT-Maven-Plugin 从命令行设置 user.agent 属性?

    我知道在我的 gwt xml 文件中 我可以通过添加以下内容来指定我希望 GWT 编译器编译我的应用程序的浏览器
  • 手动从一种 UIColor 褪色到另一种 UIColor

    我正在尝试淡化一个UIColor到另一个drawRect 我创建了这个函数来计算一定百分比的颜色 UIColor colorFromColor UIColor fromColor toColor UIColor toColor percen
  • WTSOpenServer 返回“访问被拒绝”

    我正在尝试在我拥有管理员权限的远程计算机上使用远程桌面 API 但是WTSOpenServer调用始终返回错误 5 访问被拒绝 我什至尝试打电话WNetAddConnection2建立一个会话 工作正常 我可以连接到机器上的 IPC 或 C
  • Google 助理“没有名为 googles 的模块......”

    每当我运行这个命令时 py m googlesamples assistant auth helpers client secrets
  • NHibernate 与 Microsoft Sync Framework 集成良好吗?

    我们想要同时使用 NHibernate 和 Microsoft Sync Framework 有人有结合这两个框架的经验吗 Thanks Ashley 不 混合 NHibernate 和 Sync Framework 会出现一些问题 See
  • 我无法打开 .xlsx 文件

    我想打开一个 xlsx 文件 我尝试了下面的代码 但它既没有打开也没有抛出任何错误 任何人都可以阐明它吗 string path C examples file1 xlsx string connString string Format P