Sam*_*iel 3 c# asp.net file-extension file
我有一个包含文件名列表的下拉列表。在下拉列表中选择文件名时,我执行以下操作
string filename = ddl.SelectedItem.Text;
string path = "F:\\WorkingCopy\\files\\" + filename +".docx";
DownloadFile(path,filename);
Run Code Online (Sandbox Code Playgroud)
文件夹中的文件可能包含任何扩展名。由于我在字符串路径中硬编码了“.docx”,所以一切正常。但我需要单独使用 ddl.SelectedItem.Text 获取文件名的扩展名。你能告诉我怎么做吗?
我有的东西 1.) 没有扩展名的文件名
string filename = ddl.SelectedItem.Text;
Run Code Online (Sandbox Code Playgroud)
2.) 文件所在的路径
string path = "F:\\WorkingCopy\\files\\" + filename
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用这些 . 任何人都可以对此提出建议吗?
你可以这样使用Directory.EnumerateFiles():
string path = "F:\\WorkingCopy\\files\\";
string filename = ddl.SelectedItem.Text;
string existingFile = Directory.EnumerateFiles(path, filename + ".*").FirstOrDefault();
if (!string.IsNullOrEmpty(existingFile))
Console.WriteLine("Extension is: " + Path.GetExtension(existingFile));
Run Code Online (Sandbox Code Playgroud)
Directory.EnumerateFiles搜索path像filename.*. Path.GetExtension()返回找到的文件的扩展名。
一般来说,我更喜欢使用EnumerateFiles()而不是GetFiles因为它返回一个IEnumerable<string>替代string[]。这表明它只根据需要返回匹配的文件,而不是一次搜索所有匹配的文件。(这在您的情况下并不重要,只是一般说明)。
| 归档时间: |
|
| 查看次数: |
8938 次 |
| 最近记录: |