如何使用 Directory.Getfile 在 C# 中获取具有所需名称的文件
本文关键字:文件 获取 Directory 何使用 Getfile | 更新日期: 2023-09-27 18:35:35
我正在尝试从指定路径的目录中获取名称为"文件名.wav"的文件,我无法获得所需的功能..在这方面的任何帮助都值得赞赏。
static void Main(string[] args)
{
string[] fileEntries = Directory.GetFiles(
@"D:'project'Benten_lat'BentenPj_000_20141124_final'Testing'DPCPlus'Ref'Generated_Ref_Outputs_MSVS", "*.wav");
foreach (string fileName in fileEntries)
{
string[] fileEntries1 = Directory.GetFiles(
@"D:'project'older versions'dpc_latest'Testing'DPCPlus'input");
foreach (string fileName1 in fileEntries1)
{
Console.WriteLine(Path.GetFileName(fileName1));
}
}
}
此代码将从文件夹中搜索abCd
名称匹配的所有.xml
扩展文件C:''SomeDir''
。
string cCId ="abCd";
DirectoryInfo di = new DirectoryInfo("C:''SomeDir''");
FileInfo[] orderFiles = di.GetFiles("*" + cCId + "*.xml", SearchOption.TopDirectoryOnly);
您应该根据需要更改此代码。希望这对你有帮助。
如果要
从文件路径中提取名称和扩展名,可以使用以下代码:
string result = Path.GetFileName(yourFilePath); // result will be filename.wav
您不能对文件路径使用GetFiles
方法!
Directory.GetFiles(@"D:'project'Benten_lat'BentenPj_000_20141124_final'Testing'DPCPlus'Ref'Generated_Ref_Outputs_MSVS'filename.wav") //Error
此方法的输入应为目录!
基于您的问题的假设(如果我错了,请纠正我):
- 您知道文件夹(例如,用户输入了它)
- 您知道文件名(例如,它是硬编码的,因为它必须始终相同)
在这种情况下,您实际上不需要搜索文件。
溶液:
string folderPath = @"D:'somewhere";
string fileName = "file.wav";
string filePath = Path.Combine(folderPath, fileName);
if (File.Exists(filePath))
{
// continue reading the file, etc.
}
else
{
// handle file not found
}