23 #include "fileutils.h" 25 #include <QCryptographicHash> 26 #include <QDirIterator> 30 QByteArray FileUtils::md5(
const QString &path)
33 if (f.open(QIODevice::ReadOnly))
35 QCryptographicHash hash(QCryptographicHash::Md5);
36 QByteArray chunk = f.read(1024 * 1024);
37 for (; !chunk.isEmpty(); chunk = f.read(1024 * 1024))
47 Qt::CaseSensitivity FileUtils::comparisonSensitivity()
49 #if defined(Q_OS_WIN32) 50 return Qt::CaseInsensitive;
52 return Qt::CaseSensitive;
58 foreach (
const QString &candidate, candidates)
60 if (QFileInfo(candidate) == QFileInfo(path))
69 const QStringList & nameFilters)
71 QDirIterator it(dirPath, nameFilters, QDir::Files);
72 bool bAllSuccess =
true;
75 QString path = it.next();
80 gLog << Log::tr(
"Failed to remove: %1").arg(path);
static bool containsPath(const QStringList &candidates, const QString &path)
Uses QFileInfo::operator== to see if 'path' is on 'candidates' list.
static bool rmAllFiles(const QString &dirPath, const QStringList &nameFilters=QStringList())
Deletes all files in specified directory.