C++/Qt5:从指定位置获取随机图像文件

C++/Qt5: Get a random image file from specified location

给定一个文件夹和子文件夹都包含 jpeg 文件,我可以编写什么函数来从中提取随机文件,每次调用该函数时。

例如假设我们有以下目录结构:

root_directory/
    ├── image_1.jpg
    ├── child_directory_1/
    │   ├── image_1.jpg
    │   └── image_2.jpg
    └── child_direcory_2/
        ├── child_directory_2_1/
        │   └── image_1.jpg
        └── child_directory_2_1/
            └── image_1.jpg

有没有办法在指定root_directory的位置时打开随机图片。

我的建议是,使用 qdirEntryList:

  1. 设置根为root_directory
  2. 然后使用过滤器(png、jpg 或您需要的)搜索所有图像,然后
  3. 之后生成0到list.size()之间的伪随机数
  4. 并将其用作获取图像路径的索引,
  5. 最后你将在你要 return 的 QImage 对象的构造函数中使用。