30 #ifndef __TERRALIB_CORE_FILESYSTEM_FILESYSTEM_H__ 31 #define __TERRALIB_CORE_FILESYSTEM_FILESYSTEM_H__ 34 #include "../Config.h" 59 static std::string currentPath();
68 static std::string systemCompletePath(
const std::string& path);
75 static std::string tempDirectoryPath();
85 static std::string uniquePath(
86 const std::string& format =
"%%%%-%%%%-%%%%-%%%%");
95 static std::string absolutePath(
const std::string& path);
104 static std::string extension(
const std::string& path);
113 static std::string fileName(
const std::string& path);
122 static std::string stem(
const std::string& path);
131 static std::string parentPath(
const std::string& path);
140 static bool isDirectory(
const std::string& path);
149 static bool isEmpty(
const std::string& path);
157 static bool isRegularFile(
const std::string& path);
165 static std::string executableDirectory();
174 static bool exists(
const std::string& path);
183 static bool createDirectory(
const std::string& path);
192 static bool createDirectories(
const std::string& path);
201 static void copyFile(
const std::string& from,
const std::string& to);
213 static bool remove(
const std::string& path);
221 static void rename(
const std::string& old_p,
const std::string& new_p);
230 static std::vector<std::string> listDirectory(
const std::string& path);
242 static uintmax_t fileSize(
const std::string& path);
255 #endif //__TERRALIB_CORE_FILESYSTEM_FILESYSTEM_H__ A class for handling system files and paths using UTF-8 strings.