首页 >后端开发 >C++ >如何修复在 Excel 中读取 xlsx 文件时出现'外部表不是预期格式”错误?

如何修复在 Excel 中读取 xlsx 文件时出现'外部表不是预期格式”错误?

Susan Sarandon
Susan Sarandon原创
2025-01-26 17:21:16640浏览

How to Fix the

解决 Excel “外部表格式不符”错误

问题:

当使用连接字符串(包含 Microsoft.Jet.OLEDB.4.0 和 Extended Properties=Excel 8.0)读取 Excel (xlsx) 文件时,如果文件未在 Excel 中打开,可能会出现“外部表格式不符”错误。

解决方案:

为了直接访问 xlsx 文件而无需在 Excel 中打开它,请修改连接字符串如下:

  1. 将 "Microsoft.Jet.OLEDB.4.0" 替换为 "Microsoft.ACE.OLEDB.12.0"。此更新的驱动程序与 Excel 2007 文件兼容。
  2. 将 "Extended Properties=Excel 8.0" 更新为 "Extended Properties=Excel 12.0"。此调整与使用的 Excel 版本相符。

示例连接字符串:

<code class="language-csharp">public static string path = @"C:\src\RedirectApplication\RedirectApplication1s.xlsx";
public static string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";</code>

使用此修改后的连接字符串,您应该能够在无需预先在 Excel 中打开文件的情况下读取 Excel 文件。

以上是如何修复在 Excel 中读取 xlsx 文件时出现'外部表不是预期格式”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn