diff --git a/Libraries/LibCore/File.cpp b/Libraries/LibCore/File.cpp index f12443ad2a..fd40d9b303 100644 --- a/Libraries/LibCore/File.cpp +++ b/Libraries/LibCore/File.cpp @@ -100,4 +100,10 @@ bool File::is_directory(const String& filename) return S_ISDIR(st.st_mode); } +bool File::exists(const String& filename) +{ + struct stat st; + return stat(filename.characters(), &st) == 0; +} + } diff --git a/Libraries/LibCore/File.h b/Libraries/LibCore/File.h index 51876e738a..fdfe6f785e 100644 --- a/Libraries/LibCore/File.h +++ b/Libraries/LibCore/File.h @@ -42,6 +42,8 @@ public: bool is_directory() const; static bool is_directory(const String& filename); + static bool exists(const String& filename); + virtual bool open(IODevice::OpenMode) override; enum class ShouldCloseFileDescription {