mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-21 04:45:31 +08:00
refs #777 Utilities for reading/writing files while holding a QLockFile.
This commit is contained in:
committed by
Klaus Basan
parent
cf9b6f039c
commit
7f422eb3e4
@@ -17,6 +17,7 @@
|
|||||||
#include <QFlags>
|
#include <QFlags>
|
||||||
#include <QIODevice>
|
#include <QIODevice>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
|
#include <QLockFile>
|
||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
#include <QtGlobal>
|
#include <QtGlobal>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@@ -48,6 +49,13 @@ namespace BlackMisc
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CFileUtils::writeStringToLockedFile(const QString &content, const QString &fileNameAndPath)
|
||||||
|
{
|
||||||
|
QLockFile lock(fileNameAndPath + ".lock");
|
||||||
|
lock.lock();
|
||||||
|
return writeStringToFile(content, fileNameAndPath);
|
||||||
|
}
|
||||||
|
|
||||||
QString CFileUtils::readFileToString(const QString &fileNameAndPath)
|
QString CFileUtils::readFileToString(const QString &fileNameAndPath)
|
||||||
{
|
{
|
||||||
QFile file(fileNameAndPath);
|
QFile file(fileNameAndPath);
|
||||||
@@ -58,11 +66,23 @@ namespace BlackMisc
|
|||||||
return content;
|
return content;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString CFileUtils::readLockedFileToString(const QString &fileNameAndPath)
|
||||||
|
{
|
||||||
|
QLockFile lock(fileNameAndPath + ".lock");
|
||||||
|
lock.lock();
|
||||||
|
return readFileToString(fileNameAndPath);
|
||||||
|
}
|
||||||
|
|
||||||
QString CFileUtils::readFileToString(const QString &filePath, const QString &fileName)
|
QString CFileUtils::readFileToString(const QString &filePath, const QString &fileName)
|
||||||
{
|
{
|
||||||
return readFileToString(appendFilePaths(filePath, fileName));
|
return readFileToString(appendFilePaths(filePath, fileName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString CFileUtils::readLockedFileToString(const QString &filePath, const QString &fileName)
|
||||||
|
{
|
||||||
|
return readLockedFileToString(appendFilePaths(filePath, fileName));
|
||||||
|
}
|
||||||
|
|
||||||
bool CFileUtils::writeStringToFileInBackground(const QString &content, const QString &fileNameAndPath)
|
bool CFileUtils::writeStringToFileInBackground(const QString &content, const QString &fileNameAndPath)
|
||||||
{
|
{
|
||||||
if (fileNameAndPath.isEmpty()) { return false; }
|
if (fileNameAndPath.isEmpty()) { return false; }
|
||||||
|
|||||||
@@ -41,12 +41,21 @@ namespace BlackMisc
|
|||||||
//! Write string to text file
|
//! Write string to text file
|
||||||
static bool writeStringToFile(const QString &content, const QString &fileNameAndPath);
|
static bool writeStringToFile(const QString &content, const QString &fileNameAndPath);
|
||||||
|
|
||||||
|
//! Write string to file, with a lock so two applications can't access at the same time
|
||||||
|
static bool writeStringToLockedFile(const QString &content, const QString &fileNameAndPath);
|
||||||
|
|
||||||
//! Read file into string
|
//! Read file into string
|
||||||
static QString readFileToString(const QString &fileNameAndPath);
|
static QString readFileToString(const QString &fileNameAndPath);
|
||||||
|
|
||||||
|
//! Read file into string, with a lock so two applications can't access at the same time
|
||||||
|
static QString readLockedFileToString(const QString &fileNameAndPath);
|
||||||
|
|
||||||
//! Read file into string
|
//! Read file into string
|
||||||
static QString readFileToString(const QString &filePath, const QString &fileName);
|
static QString readFileToString(const QString &filePath, const QString &fileName);
|
||||||
|
|
||||||
|
//! Read file into string, with a lock so two applications can't access at the same time
|
||||||
|
static QString readLockedFileToString(const QString &filePath, const QString &fileName);
|
||||||
|
|
||||||
//! Write string to text file in background
|
//! Write string to text file in background
|
||||||
static bool writeStringToFileInBackground(const QString &content, const QString &fileNameAndPath);
|
static bool writeStringToFileInBackground(const QString &content, const QString &fileNameAndPath);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user