c# - 如何指定打开excel文件的字符串路径?

标签 c# excel datatable oledbconnection

知道 excel 文件的文件名将始终更改或至少将该文件夹中最近保存的 excel 文件插入字符串路径,我将如何指定用于打开 excel 文件的字符串路径?例如,

string PATH = @"C:\myFileNameWillAlwaysCHange.xlms or mostRecentFile.xlms";
string connection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + PATH + ";Extended Properties=Excel 12.0";

我想知道 excel 文件所在的文件夹是否将是唯一的 excel 文件,是否有一种方法可以根据该文件夹中的任何(唯一)excel 文件指定路径并将其插入字符串路径?

最佳答案

你可以这样做

string PATH = Directory.GetFiles("C:\", "*.xlms").Single();

string connection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + PATH + ";Extended Properties=Excel 12.0";

如果您不希望它在找到更多文件时抛出异常,请将 Single 替换为 First
如果您不希望它在没有匹配文件时抛出异常,请将 Single 替换为 FirstOrDefault 并添加一个 null 检查


编辑

获取最新的文件:

string PATH = Directory.GetFiles("C:\", "*.xlms").Select(f => new FileInfo(f)).OrderByDescending(fi => fi.CreationTime).First().FullName

关于c# - 如何指定打开excel文件的字符串路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30218133/

相关文章:

c# - 为什么 OleDB 忽略 Excel 单元格?

excel - 使用数组循环将格式应用于范围 - VBA

excel - 在 excel 中识别特定 ASCII 范围之外的特殊字符并不总是有效

jquery - 已选择数据表类

c# - 与数据表进行数据绑定(bind)后,GridView Column.Count 始终为 0

c# - Unity中随机间隔的随机音频

c# - 在 ASP.net C# 中,如何将参数从 Javascript 函数传递给 onclick 处理程序

c# - 当他/她的帐户被锁定时向用户发送短信通知消息,我如何在 C# 中执行此操作

excel - 从复杂表中获取某些值

mysql - VB.NET WPF 如何从datagrid获取列值?