C++/Qt : Get files in directory ordered according to sorting currently applied in Windows Explorer

标签 c++ qt sorting filesystems

我想知道 Qt 中是否有一种方法可以根据该文件夹的当前 Windows 资源管理器设置来获取文件夹中文件的文件名。在 Windows 资源管理器中,用户可以根据许多不同的标准(例如名称、捕获日期等)对文件进行排序,我希望能够在我的应用程序中维持该顺序。

更新:

Perfect 将是一个跨平台解决方案,它也适用于 Macintosh 上的 Finder 和 Ubuntu 上的 Nautilus。

最佳答案

This answer建议使用 IFolderView界面。

更新:

抱歉,您可能正在寻找 IFolderView2接口(interface),尤其是 GetSortColumns方法:

HRESULT GetSortColumns(
    [out] const SORTCOLUMN *rgSortColumns,
    [in]  int cColumns
);

返回的SORTCOLUMN structure似乎有您需要的信息:

typedef struct SORTCOLUMN {
    PROPERTYKEY   propkey;
    SORTDIRECTION direction;
} SORTCOLUMN;

关于C++/Qt : Get files in directory ordered according to sorting currently applied in Windows Explorer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32741121/

相关文章:

c++ - C++中移动数组的函数

perl 排序数组 : leave an item starts with # in-place

c++ - 在 C++ 中使用 LZMA SDK

c++ - 为了方便起见,我应该避免公开私有(private)字段变量吗?

c++ - 自定义字符串文字

c++ - QT - 切换 .ui 的问题

qt - 用于没有包装项目的多个项目的 QML Repeater

c++ - 获取 map<string,vector<string>> 的键

c++ std::sort a std::vector 使用函数返回值

algorithm - 高度为 h 的节点数是多少?