163bool copyFile(
const QString &inputPath,
const QString &outputPath, QString *outErrorMessage)
165 QFile inputFile(inputPath);
166 if (!inputFile.open(QIODevice::ReadOnly)) {
167 if (outErrorMessage) {
169 QStringLiteral(
"failed to open input file '%1': %2").arg(inputPath).arg(inputFile.errorString());
174 QFile outputFile(outputPath);
175 if (!outputFile.open(QIODevice::WriteOnly | QIODevice::Truncate)) {
176 if (outErrorMessage) {
178 QStringLiteral(
"failed to open output file '%1': %2").arg(outputPath).arg(outputFile.errorString());
183 return copyFileContents(inputPath, outputPath, inputFile, outputFile, outErrorMessage);
188 QFile inputFile(inputPath);
189 if (!inputFile.open(QIODevice::ReadOnly)) {
190 if (outErrorMessage) {
192 QStringLiteral(
"failed to open input file '%1': %2").arg(inputPath).arg(inputFile.errorString());
197 if (!outputFile.open()) {
198 if (outErrorMessage) {
199 *outErrorMessage = QStringLiteral(
"failed to open temporary output file: %1").arg(outputFile.errorString());
204 if (outErrorMessage) {
205 outErrorMessage->clear();
207 return copyFileContents(inputPath, outputFile.fileName(), inputFile, outputFile, outErrorMessage);