- [NEW] Funció per a comprobar si un arxiu existeix

This commit is contained in:
2024-06-10 21:43:54 +02:00
parent 1af08ecf3c
commit 63e53c1e68
2 changed files with 38 additions and 0 deletions

View File

@@ -192,6 +192,40 @@ namespace file
}
}
bool fileExists(const std::string resourcename)
{
// Si tenim configurat agafar els recursos de arxiu, pero encara no tenim la taula de continguts carregada...
if (file_source == SOURCE_FILE and toc.size() == 0)
{
// Si fallem al intentar carregar la taula de continguts de l'arxiu de recursos, canviem a pillar els recursos de carpeta
if (not getTableOfContents())
{
setSource(SOURCE_FOLDER);
}
}
// Si estem pillant els recursos de un arxiu de recursos...
if (file_source == SOURCE_FILE)
{
// Busquem el recurs en la taula de continguts usant la ruta
bool found = false;
uint32_t count = 0;
while (!found && count < toc.size())
{
found = (resourcename == toc[count].path);
if (!found)
{
count++;
}
}
return found;
}
else
{
return access((resource_folder + resourcename).c_str(), F_OK) == 0;
}
}
// Obté un "FILE*" al arxiu que se li demana, independentment de la font (arxius individual en carpeta, o arxiu de recursos)
FILE *getFilePointer(const std::string resourcename, int &filesize, const bool binary)
{