如何仅使用文件名搜索.jpg/PDF(仅使用“dog”搜索“dog.jpg”),可以这样做吗?C#

如何仅使用文件名搜索.jpg/PDF(仅使用“dog”搜索“dog.jpg”),可以这样做吗?C#,c#,parsing,url,search,getfiles,C#,Parsing,Url,Search,Getfiles,如果您只知道文件名,有没有办法搜索jpg或PDF 虚拟站点:www.dummysite1.com/animal=dog 我要做的是解析URL,取解析后的名称“dog”,然后在文件夹中搜索同名的.jpg 假设在解析“dog”之后,我有一个名为“imgAnimal”的文件夹,我想在“imgAnimal”文件夹中查找“dog.jpg”。然后我想在另一个窗口中打开“dog.jpg” 我不知道这是不是最好的方法,也不知道这是否可能,但我只是想了一个方法,不熟悉C#,这就是我想到的。文件夹中会有很多图片,所

如果您只知道文件名,有没有办法搜索jpg或PDF

虚拟站点:www.dummysite1.com/animal=dog

我要做的是解析URL,取解析后的名称“dog”,然后在文件夹中搜索同名的.jpg

假设在解析“dog”之后,我有一个名为“imgAnimal”的文件夹,我想在“imgAnimal”文件夹中查找“dog.jpg”。然后我想在另一个窗口中打开“dog.jpg”

我不知道这是不是最好的方法,也不知道这是否可能,但我只是想了一个方法,不熟悉C#,这就是我想到的。文件夹中会有很多图片,所以我不知道搜索所有图片是最好的还是重要的

欢迎任何想法,如果有更好的方法,我不必这样做。谢谢

编辑:

我有解析过的代码和所有与URL部分相关的东西。我真正想问的唯一一件事是——在C语言中有没有一种方法可以使用“dog”这样的词来搜索“dog.jpg”,然后在新的web窗口中打开该jpg?

您可以使用以下方法来查找文件:

string param = GetParamFromQueryString();
string relativeWebServerPathToFolder = "../images/imgAnimal";

var dirInfo = new DirectoryInfo(Server.MapPath(relativeWebServerPathToFolder));

var foundFiles = dirInfo.GetFiles(param + ".jpg"); // you can also use + ".*" to search for all files

if (foundFiles.Length == 1)
{
    ClientScript.RegisterStartupScript(this.GetType(), "openFoundImage", "window.open('" + relativeWebServerPathToFolder + foundFiles.Name + "');", true); // registers a script block to pop open the file
}

ClientScript.RegisterStartupScript的文档:

+1表示
RegisterStartupScript()
。真不敢相信我跳过了那部分!