您可以尝试以下解决方法来解决“ACE.OLEDBE.12.0 无法从某些 XLSX 文件中读取任何行”的问题:
确保您的系统已安装 Microsoft Access Database Engine 2010 再发行版本(ACE.OLEDBE.12.0)。您可以从 Microsoft 官方网站下载并安装此软件包。
检查文件路径和文件名是否正确。确保文件路径和文件名没有任何拼写错误或错误的字符。
确保您有适当的访问权限来读取文件。如果文件位于受限的文件夹中,请确保您具有读取权限。
确保您的 XLSX 文件没有损坏。您可以尝试打开文件并检查是否可以正常访问和读取文件的内容。
下面是一个使用 ACE.OLEDBE.12.0 连接字符串读取 XLSX 文件的示例代码:
using System;
using System.Data.OleDb;
class Program
{
static void Main()
{
string connectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\path\to\your\file.xlsx;Extended Properties='Excel 12.0 Xml;HDR=YES;IMEX=1;'";
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
string query = "SELECT * FROM [Sheet1$]";
OleDbCommand command = new OleDbCommand(query, connection);
OleDbDataReader reader = command.ExecuteReader();
while (reader.Read())
{
// 处理读取的数据
}
reader.Close();
}
}
}
请确保将 C:\path\to\your\file.xlsx
替换为实际的文件路径和文件名。
请注意,以上解决方法和示例代码仅适用于使用 ACE.OLEDBE.12.0 访问 XLSX 文件的情况。如果问题仍然存在,可能需要进一步检查文件的内容和格式,以及其他可能的问题。