【发布时间】:2023-03-21 11:28:01
【问题描述】:
有没有办法全局搜索文件名+ .exe 或其他什么,然后获取它的目录。这意味着,假设我的深层 C 驱动器中有一个名为“food.txt”的文件。我想得到它的目录,无论我把它放在我的电脑的什么地方,只要输入它的名字+.txt。
“全局目录”没有类似的标签或其他东西。我的意思是像“\global\food.txt”?谢谢!
所以我要做的事情是:当我用 .txt 键入现有文件名时,我想打开这个文件,无论它位于我的电脑中的哪个位置。另外我不会有两个同名的重复项,别担心:D
代码:
void open_program(string target_name) {
cout << "Opening..." << endl;
string final_directory = target_name;
ShellExecuteA(NULL, "open", final_directory.c_str(), NULL, NULL, SW_SHOWNORMAL);
cout << final_directory;
}
【问题讨论】:
-
欢迎来到 Stack Overflow。请花时间阅读The Tour 并参考Help Center 中的材料,您可以在这里问什么以及如何问。
-
您需要递归遍历所有目录和文件,找到具有指定名称的目录和文件,然后您就可以确定它的路径。
-
不,我不是在寻找任何额外的插件或类似的东西。我只使用构建它的东西。不过谢谢。
-
@bitcell 并且您仍然不确定该路径,因为系统中可能有 x 个文件 food.txt 在不同的地方并且具有不同的内容?问题的作者:你确定你要问的是什么,可能是试图解释一个问题,因为没有解决方案可以确保 C 驱动器上某处的第一个随机找到的文件是你正在寻找的文件。可以使用校验和等;但我觉得你不需要那个。
-
@Drako,嗯......他说的是“一个文件”,所以我认为任何具有该名称的文件都是正确的。
标签: c++