C# 我能否仅按文件名查找文件(即扩展名未知)
我们有一个网络文件夹,它是由不同服务器处理的csv文件的登录位置。我们更改csv文件的扩展名以匹配处理该文件的服务器;例如,由Server1处理的名为C# 我能否仅按文件名查找文件(即扩展名未知),c#,vb.net,.net-2.0,asp.net-2.0,C#,Vb.net,.net 2.0,Asp.net 2.0,我们有一个网络文件夹,它是由不同服务器处理的csv文件的登录位置。我们更改csv文件的扩展名以匹配处理该文件的服务器;例如,由Server1处理的名为FooBar的文件将以FooBar.Server\u 1的名称登录到网络共享中 我可以获得的信息是文件名:FooBar和共享路径。我不保证扩展,因为有多个服务器将csv文件发送到网络共享。我保证共享中只有一个FooBar文件 在.net 2.0中是否有一种方法可用于获取仅具有路径和文件名的csv扩展名?或者我需要自己制作吗?目录。GetFiles(
FooBar
的文件将以FooBar.Server\u 1
的名称登录到网络共享中
我可以获得的信息是文件名:FooBar
和共享路径。我不保证扩展,因为有多个服务器将csv文件发送到网络共享。我保证共享中只有一个FooBar
文件
在.net 2.0中是否有一种方法可用于获取仅具有路径和文件名的csv扩展名?或者我需要自己制作吗?目录。GetFiles(网络文件夹路径,“FooBar.*)[0]将提供完整路径
Path.GetExtension
将为您提供扩展名
如果您想将其全部放在一起:
string extension = Path.GetExtension(
Directory.GetFiles(NETWORK_FOLDER_PATH, "FooBar.*")[0]);
这应该可以做到:
string[] results = System.IO.Directory.GetFiles("\\\\sharepath\\here", "FooBar.*", System.IO.SearchOption.AllDirectories);
if(results.Length > 0) {
//found it
DoSomethingWith(results[0]);
} else {
// :(
}
如果您知道文件将驻留的目录,您可以使用:
DirectoryInfo.GetFiles(“FooBar.*)
我假设他只关心扩展名,因为他不知道它是什么。我的错。
DirectoryInfo di = new DirectoryInfo(yourPath)
{
FileInfo[] files = di.GetFiles(FooBar.*);
}