26#if ! DOXYGEN && (JUCE_MAC || JUCE_IOS)
27 using OSType =
unsigned int;
85 File& operator= (
const String& newAbsolutePath);
88 File& operator= (
const File& otherFile);
168 String getFileName()
const;
185 String getRelativePathFrom (
const File& directoryToBeRelativeTo)
const;
196 String getFileExtension()
const;
209 bool hasFileExtension (
StringRef extensionToTest)
const;
229 String getFileNameWithoutExtension()
const;
237 int hashCode()
const;
244 int64 hashCode64()
const;
279 File getParentDirectory()
const;
290 bool isAChildOf (
const File& potentialParentDirectory)
const;
310 File getNonexistentChildFile (
const String& prefix,
312 bool putNumbersInBrackets =
true)
const;
323 File getNonexistentSibling (
bool putNumbersInBrackets =
true)
const;
327 bool operator== (
const File&)
const;
329 bool operator!= (
const File&)
const;
331 bool operator< (
const File&)
const;
333 bool operator> (
const File&)
const;
343 bool hasWriteAccess()
const;
349 bool hasReadAccess()
const;
360 bool setReadOnly (
bool shouldBeReadOnly,
361 bool applyRecursively =
false)
const;
368 bool setExecutePermission (
bool shouldBeExecutable)
const;
373 bool isHidden()
const;
381 uint64 getFileIdentifier()
const;
389 Time getLastModificationTime()
const;
396 Time getLastAccessTime()
const;
403 Time getCreationTime()
const;
411 bool setLastModificationTime (
Time newTime)
const;
419 bool setLastAccessTime (
Time newTime)
const;
427 bool setCreationTime (
Time newTime)
const;
435 String getVersion()
const;
463 Result createDirectory()
const;
477 bool deleteFile()
const;
491 bool deleteRecursively (
bool followSymlinks =
false)
const;
499 bool moveToTrash()
const;
515 bool moveFileTo (
const File& targetLocation)
const;
525 bool copyFileTo (
const File& targetLocation)
const;
537 bool replaceFileIn (
const File& targetLocation)
const;
552 bool copyDirectoryTo (
const File& newDirectory)
const;
600 bool searchRecursively,
601 const String& wildCardPattern =
"*",
602 FollowSymlinks followSymlinks = FollowSymlinks::yes)
const;
609 int findChildFiles (
Array<File>& results,
int whatToLookFor,
610 bool searchRecursively,
const String& wildCardPattern =
"*",
611 FollowSymlinks followSymlinks = FollowSymlinks::yes)
const;
630 int getNumberOfChildFiles (
int whatToLookFor,
631 const String& wildCardPattern =
"*")
const;
636 bool containsSubDirectories()
const;
656 std::unique_ptr<FileInputStream> createInputStream()
const;
689 std::unique_ptr<FileOutputStream> createOutputStream (
size_t bufferSize = 0x8000)
const;
711 String loadFileAsString()
const;
725 bool appendData (
const void* dataToAppend,
726 size_t numberOfBytes)
const;
742 bool replaceWithData (
const void* dataToWrite,
743 size_t numberOfBytes)
const;
758 bool appendText (
const String& textToAppend,
759 bool asUnicode =
false,
760 bool writeUnicodeHeaderBytes =
false,
761 const char* lineEndings =
"\r\n")
const;
779 bool replaceWithText (
const String& textToWrite,
780 bool asUnicode =
false,
781 bool writeUnicodeHeaderBytes =
false,
782 const char* lineEndings =
"\r\n")
const;
787 bool hasIdenticalContentTo (
const File& other)
const;
796 static void findFileSystemRoots (
Array<File>& results);
801 String getVolumeLabel()
const;
806 int getVolumeSerialNumber()
const;
813 int64 getBytesFreeOnVolume()
const;
820 int64 getVolumeTotalSize()
const;
823 bool isOnCDRomDrive()
const;
830 bool isOnHardDisk()
const;
836 bool isOnRemovableDrive()
const;
850 bool startAsProcess (
const String& parameters =
String())
const;
855 void revealToUser()
const;
948 #if JUCE_WINDOWS || DOXYGEN
950 windowsSystemDirectory,
959 #if JUCE_WINDOWS || DOXYGEN
967 globalApplicationsDirectoryX86,
992 static File getCurrentWorkingDirectory();
1001 bool setAsCurrentWorkingDirectory()
const;
1026 static String createLegalFileName (
const String& fileNameToFix);
1035 static String createLegalPathName (
const String& pathNameToFix);
1038 static bool areFileNamesCaseSensitive();
1041 static bool isAbsolutePath (
StringRef path);
1048 static File createFileWithoutCheckingPath (
const String& absolutePath)
noexcept;
1051 static String addTrailingSeparator (
const String& path);
1055 bool createSymbolicLink (
const File& linkFileToCreate,
bool overwriteExisting)
const;
1058 bool isSymbolicLink()
const;
1063 File getLinkedTarget()
const;
1070 static bool createSymbolicLink (
const File& linkFileToCreate,
1071 const String& nativePathOfTarget,
1072 bool overwriteExisting);
1076 String getNativeLinkedTarget()
const;
1078 #if JUCE_WINDOWS || DOXYGEN
1080 bool createShortcut (
const String& description,
const File& linkFileToCreate)
const;
1083 bool isShortcut()
const;
1089 #if JUCE_MAC || JUCE_IOS || DOXYGEN
1091 OSType getMacOSType()
const;
1094 bool isBundle()
const;
1097 #if JUCE_MAC || DOXYGEN
1099 void addToDock()
const;
1102 #if JUCE_MAC || JUCE_IOS
1110 static File getContainerForSecurityApplicationGroupIdentifier (
const String& appGroup);
1124 #if NAMES_ARE_CASE_SENSITIVE
1134 #if JUCE_ALLOW_STATIC_NULL_VARIABLES && ! defined (DOXYGEN)
1140 [[deprecated]]
static const juce_wchar separator;
1141 [[deprecated]]
static const StringRef separatorString;
1142 [[deprecated]]
static const File nonexistent;
#define noexcept
Definition DistrhoDefines.h:72
#define final
Definition DistrhoDefines.h:74
uint8_t a
Definition Spc_Cpu.h:141
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
Definition juce_Array.h:56
Definition juce_File.h:45
bool copyInternal(const File &) const
Definition juce_linux_CommonFile.cpp:26
bool isDirectory() const
Definition juce_posix_SharedCode.h:238
bool existsAsFile() const
Definition juce_posix_SharedCode.h:252
int64 getSize() const
Definition juce_posix_SharedCode.h:257
String fullPath
Definition juce_File.h:1147
const String & getFullPathName() const noexcept
Definition juce_File.h:153
String getPathUpToLastSlash() const
Definition juce_File.cpp:345
static String parseAbsolutePath(const String &)
Definition juce_File.cpp:130
SpecialLocationType
Definition juce_File.h:861
@ userMoviesDirectory
Definition juce_File.h:878
@ userMusicDirectory
Definition juce_File.h:875
@ tempDirectory
Definition juce_File.h:913
@ globalApplicationsDirectory
Definition juce_File.h:957
@ userDocumentsDirectory
Definition juce_File.h:869
@ currentApplicationFile
Definition juce_File.h:936
@ invokedExecutableFile
Definition juce_File.h:943
@ commonDocumentsDirectory
Definition juce_File.h:908
@ userApplicationDataDirectory
Definition juce_File.h:889
@ userPicturesDirectory
Definition juce_File.h:881
@ commonApplicationDataDirectory
Definition juce_File.h:901
@ userDesktopDirectory
Definition juce_File.h:872
@ hostApplicationPath
Definition juce_File.h:946
@ currentExecutableFile
Definition juce_File.h:926
@ userHomeDirectory
Definition juce_File.h:863
bool replaceInternal(const File &) const
Definition juce_posix_SharedCode.h:420
TypesOfFileToFind
Definition juce_File.h:558
@ ignoreHiddenFiles
Definition juce_File.h:562
@ findDirectories
Definition juce_File.h:559
@ findFilesAndDirectories
Definition juce_File.h:561
@ findFiles
Definition juce_File.h:560
static String descriptionOfSizeInBytes(int64 bytes)
Definition juce_File.cpp:475
FollowSymlinks
Definition juce_File.h:566
bool moveInternal(const File &) const
Definition juce_posix_SharedCode.h:404
bool isRoot() const
Definition juce_File.cpp:125
void getFileTimesInternal(int64 &m, int64 &a, int64 &c) const
Definition juce_posix_SharedCode.h:325
bool setFileReadOnlyInternal(bool) const
Definition juce_posix_SharedCode.h:314
bool setFileExecutableInternal(bool) const
Definition juce_posix_SharedCode.h:320
bool setFileTimesInternal(int64 m, int64 a, int64 c) const
Definition juce_posix_SharedCode.h:351
bool exists() const
Definition juce_posix_SharedCode.h:246
Result createDirectoryInternal(const String &) const
Definition juce_posix_SharedCode.h:425
Definition juce_MemoryBlock.h:33
Definition juce_Result.h:57
Definition juce_StringArray.h:35
Definition juce_String.h:53
int compareNatural(StringRef other, bool isCaseSensitive=false) const noexcept
Definition juce_String.cpp:700
Definition juce_StringRef.h:62
Definition juce_Time.h:37
unsigned * m
Definition inflate.c:1559
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
@ no
Definition juce_AlertWindow.cpp:567
@ yes
Definition juce_AlertWindow.cpp:567
static File createTempFile(const File &parentDirectory, String name, const String &suffix, int optionFlags)
Definition juce_TemporaryFile.cpp:43
unsigned long long uint64
Definition juce_MathsFunctions.h:56
long long int64
Definition juce_MathsFunctions.h:54
wchar_t juce_wchar
Definition juce_CharacterFunctions.h:42
bool foldersFirst
Definition juce_File.h:1131
NaturalFileComparator(bool shouldPutFoldersFirst) noexcept
Definition juce_File.h:1117
int compareElements(const File &firstFile, const File &secondFile) const
Definition juce_File.h:1119
return c
Definition crypt.c:175
int result
Definition process.c:1455
typedef int(UZ_EXP MsgFn)()
#define const
Definition zconf.h:137