如何在cocos2d-x上列出目录中的文件?

如何在cocos2d-x上列出目录中的文件?,cocos2d-x,Cocos2d X,我将文件保存在iPhone模拟器的可写目录中。 可以在运行时动态删除和创建文件。 我想使用目录路径而不是文件名在特定目录中列出这些文件 例如: /Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_1.json /Users/mine/Library/Application Suppor

我将文件保存在iPhone模拟器的可写目录中。 可以在运行时动态删除和创建文件。 我想使用目录路径而不是文件名在特定目录中列出这些文件

例如:

/Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_1.json
/Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_2.json
/Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_24.json
/Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_3.json
/Users/mine/Library/Application Support/iPhone Simulator/7.1/Applications/022F7891-1983-4791-AB59-451B2EAF4FB8/Documents/stage/stage_4.bmp
vector=GetFileIndir(FileUtils::getInstance()->getWritablePath()+字符串(“文档/阶段”),“json”)

vector=>(“stage_1.json”、“stage_1.json”、“stage_1.json”、“stage_1.json”)


cocos2dx中没有用于列出目录内容的跨平台API。创建文件名时,可以将文件名存储在数组中

如果只想按文件名读取文件,则需要在
CCFileUtils中插入文件夹路径到搜索路径到搜索路径

FileUtils *fileUtils = FileUtils::getInstance();
vector<string> searchPaths = fileUtils->getSearchPaths();
string path = fileUtils->getWritablePath() + "stage";
searchPaths.insert(searchPaths.begin(), path);
fileUtils->setSearchPaths(searchPaths);
FileUtils*FileUtils=FileUtils::getInstance();
vector searchpath=fileUtils->getsearchpath();
字符串路径=fileUtils->getWritablePath()+“stage”;
insert(searchpath.begin(),path);
fileUtils->setSearchPath(搜索路径);

然后将FileUtils::getInstance()->getWritablePath()+字符串(“Documents/stage/”)添加到向量中的每个字符串。要添加@learncos2D所说的内容,
getWritablePath()
将返回您正在运行的平台上的正确位置。iOS、android、windows等@learncos2D:无需在路径中追加
文档
,因为
getWriteablePath()
方法已将其追加到路径中。看这里