Merge pull request #663 from jubalh/fileexists

Add FileExists() function
This commit is contained in:
Ray 2018-10-16 10:38:09 +02:00 committed by GitHub
commit d1c4a4f873
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 1 deletions

View File

@ -135,8 +135,9 @@
#include <direct.h> // Required for: _getch(), _chdir()
#define GETCWD _getcwd // NOTE: MSDN recommends not to use getcwd(), chdir()
#define CHDIR _chdir
#include <io.h> // Required for _access() [Used in FileExists()]
#else
#include "unistd.h" // Required for: getch(), chdir() (POSIX)
#include "unistd.h" // Required for: getch(), chdir() (POSIX), access()
#define GETCWD getcwd
#define CHDIR chdir
#endif
@ -1514,6 +1515,21 @@ static const char *strprbrk(const char *s, const char *charset)
return latestMatch;
}
// Return true if the file exists
bool FileExists(const char *fileName)
{
bool result = false;
#if defined(_WIN32)
if (_access(fileName, 0) != -1)
#else
if (access(fileName, F_OK) != -1)
#endif
result = true;
return result;
}
// Get pointer to filename for a path string
const char *GetFileName(const char *filePath)
{

View File

@ -870,6 +870,7 @@ RLAPI int GetRandomValue(int min, int max); // Returns a r
// Files management functions
RLAPI bool IsFileExtension(const char *fileName, const char *ext);// Check file extension
RLAPI const char *GetExtension(const char *fileName); // Get pointer to extension for a filename string
RLAPI bool FileExists(const char *fileName); // Return true if file exists
RLAPI const char *GetFileName(const char *filePath); // Get pointer to filename for a path string
RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filename string without extension (memory should be freed)
RLAPI const char *GetDirectoryPath(const char *fileName); // Get full path for a given fileName (uses static string)