我正在编写一个程序来使用闪存驱动器升级固件。我需要使用闪存设备中存在的镜像升级内核。但是我不知道如何在目录中找到带有 zimage 文件扩展名的文件。 我是 Qt 和 Linux 的新手。所以我不知道是否可以找到特定格式的文件。任何人都可以帮忙吗? 提前致谢。
最佳答案
在 Qt 中没有访问整个文件系统上的操作系统搜索索引服务的通用方法。因此,如果这就是您想要的,那么就需要像 @BЈовић 提供的那样的特定于操作系统的解决方案。
(注意:我实际上更喜欢程序让我明确指出某物所在的位置,而不是搜索整个文件系统……但如果它能注意到必要的文件何时在与可执行文件相同的目录。)
无论如何...如果您知道要搜索的目录,那么QDir抽象会让你设置一个过滤器并枚举目录中与该过滤器匹配的文件名:
QDir dir (zimagePath);
QStringList filters;
filters << "*.zimage";
foreach (QString file, dir.entryList(filters, QDir::Files)) {
// ...
}
您可以阅读 QDir 文档以了解更多查看方式。
关于c++ - 在Qt中搜索文件扩展名为zimage的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11411234/