增加Lua导出和FileList
This commit is contained in:
@@ -16,7 +16,9 @@ bool dumpNPKFileList(const char* inputFilename, const char* outputFilename)
|
||||
return false;
|
||||
}
|
||||
NPK::INPKFile* pakFile = NPK::createNPKFile();
|
||||
if (!(pakFile->openPakFile(inputFilename)))
|
||||
|
||||
std::wstring strFullName = convertAnsiStringToWide(inputFilename);
|
||||
if (!(pakFile->openPakFile(strFullName.c_str())))
|
||||
{
|
||||
printf("Error: Failed to open NPK file: %s, ErrorCode:%d\n", inputFilename, NPK::getLastErrorCode());
|
||||
return false;
|
||||
@@ -28,27 +30,27 @@ bool dumpNPKFileList(const char* inputFilename, const char* outputFilename)
|
||||
printf("Error: Failed to open output file: %s\n", outputFilename);
|
||||
return false;
|
||||
}
|
||||
int32_t fileCount = pakFile->getFileCount();
|
||||
int32_t fileCount = pakFile->getFileCounts();
|
||||
|
||||
// Dump file list
|
||||
for(int32_t i=0; i < fileCount; i++)
|
||||
{
|
||||
NPK::INPKFile::FileNode fileNode;
|
||||
if (!pakFile->getFileNode(i, fileNode))
|
||||
NPK::FileItemBaseInfo baseInfo;
|
||||
if (!pakFile->getFileItemBaseInfo(i, &baseInfo))
|
||||
{
|
||||
printf("Error: Failed to get file node at index %d\n", i);
|
||||
fclose(fpOutput);
|
||||
return false;
|
||||
}
|
||||
NPK::IFileStream* fileStream = pakFile->openFileStream(fileNode.fileName.c_str());
|
||||
NPK::IFileStream* fileStream = pakFile->openFileStream(baseInfo.keyName.c_str());
|
||||
if (!fileStream)
|
||||
{
|
||||
printf("Error: Failed to open file stream for '%s', Error=%s\n", fileNode.fileName.c_str(), NPK::getLastErrorMessage());
|
||||
printf("Error: Failed to open file stream for '%s', Error=%s\n", baseInfo.keyName.c_str(), NPK::getLastErrorMessage());
|
||||
fclose(fpOutput);
|
||||
return false;
|
||||
}
|
||||
uint32_t crc32 = fileStream->crc32();
|
||||
fprintf(fpOutput, "%s\t%08x\t%u\n", fileNode.fileName.c_str(), crc32, fileNode.fileSize);
|
||||
fprintf(fpOutput, "%s\t%08x\t%u\n", baseInfo.keyName.c_str(), crc32, baseInfo.fileSize);
|
||||
|
||||
pakFile->closeFileStream(fileStream);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user