#pragma once // qt includes #include #include #include // util includes #include "Logger.h" namespace FileUtils { QString getBaseName(const QString& sourceFile); QString getDirName(const QString& sourceFile); /// /// @brief remove directory recursive given by path /// @param[in] path Path to directory bool removeDir(const QString& path, Logger* log); /// /// @brief check if the file exists /// @param[in] path The file path to check /// @param[in] log The logger of the caller to print errors /// @param[in] ignError Ignore errors during file read (no log output) /// @return true on success else false /// bool fileExists(const QString& path, Logger* log, bool ignError=false); /// /// @brief read a file given by path. /// @param[in] path The file path to read /// @param[out] data The read data o success /// @param[in] log The logger of the caller to print errors /// @param[in] ignError Ignore errors during file read (no log output) /// @return true on success else false /// bool readFile(const QString& path, QString& data, Logger* log, bool ignError=false); /// /// write a file given by path. /// @param[in] path The file path to read /// @param[in] data The data to write /// @param[in] log The logger of the caller to print errors /// @return true on success else false /// bool writeFile(const QString& path, const QByteArray& data, Logger* log); /// /// @brief delete a file by given path /// @param[in] path The file path to delete /// @param[in] log The logger of the caller to print errors /// @param[in] ignError Ignore errors during file delete (no log output) /// @return true on success else false /// bool removeFile(const QString& path, Logger* log, bool ignError=false); /// /// @brief resolve the file error and print a message /// @param[in] file The file which caused the error /// @param[in] log The logger of the caller /// void resolveFileError(const QFile& file, Logger* log); }