mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2023-10-10 13:36:59 +02:00
65 lines
2.1 KiB
C++
65 lines
2.1 KiB
C++
#pragma once
|
|
|
|
// qt includes
|
|
#include <QFile>
|
|
#include <QString>
|
|
#include <QByteArray>
|
|
|
|
// 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);
|
|
}
|