有没有C ++轻量级跨平台文件系统库?

时间:2012-12-02 14:01:19

标签: c++ api dll filesystems

我需要一个轻量级的跨平台文件系统库来进行游戏开发。 我想在Windows,Linux和Mac上发布我的游戏。

据我所知,使用dirent.h可以在所有三个平台上运行。但是,我想知道一个更易于使用的库是否存在 - 使用direct dirent对我来说很困惑,而且我没有到达任何地方。

我也尝试过Boost,但我不喜欢它不是轻量级的,它让我在游戏的Unix端口上遇到了麻烦。

我需要的功能是:

  • 递归读取目录树
  • 获取目录中的所有文件
  • 获取目录中的所有子目录

1 个答案:

答案 0 :(得分:0)

我已经创建了自己的文件系统库(在Windows和Linux上进行了测试,包括GCC和Clang)。

您可以在SSVUtils库中找到它: https://github.com/SuperV1234/SSVUtils

SSVUtils没有外部依赖关系。

使用示例:

log("Getting all page.json files", "loadPages");

string pagesPath("Json/Pages/");
vector<string> pageJsonPaths{getScan<Mode::Recurse, Type::File, Pick::ByName>(pagesPath, "page.json")};