7

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

据我所知,使用dirent.h可以在所有三个平台上使用。但是,我想知道是否存在一个更易于使用的库 - 直接使用 dirent 让我感到困惑,我没有得到任何结果。

我也尝试过 Boost,但我不喜欢它不是轻量级的,而且它在我的游戏的 Unix 端口上给我带来了麻烦。

我需要的功能是:

  • 递归读取目录树
  • 获取目录下的所有文件
  • 获取一个目录下的所有子目录
4

1 回答 1

2

我创建了自己的文件系统库(在 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")};
于 2013-06-11T14:19:01.533 回答