如何在Cocos2d-x中使用Lua将二进制文件加载到缓冲区中

我正在 iOS 模拟器中运行 cocos2d-x 3.2。我有一个二进制文件“ConfigData.bin”在应用程序包的根目录中,我想将其加载到缓冲区中。

它需要在Android上工作。

我正在使用 io.open。它需要文件的完整路径,所以我担心它会在 Android 上出现问题。io.open 是正确的接口,还是我需要使用其他适用于 apk 的方法?

点赞
用户2277211
用户2277211

Cocos2d-x 提供了 FileUtils 类。

std::string fileName = "ConfigData.bin";
std::string filePath = FileUtils::getInstance()->fullPathForFilename(fileName.c_str());
auto fileData = FileUtils::getInstance()->getDataFromFile(filePath);
auto fileDataBytes = fileData.getBytes();

在上面的代码中,我们定义了一个文件名 ConfigData.bin,然后使用 FileUtils 类获取该文件的完整路径,接着使用 getDataFromFile 方法将文件内容读入内存,并使用 getBytes 方法获取文件内容的字节表示。

2015-06-03 06:35:44