QFileDialog :: getSaveFileName сохранения файла в папку на диск
Есть затруднения с функцией QFileDialog::getSaveFileName. Данная функция должна окрывать диалоговое окно для выбора и сохранения файла в определенную папку.
QString fileName = QFileDialog::getSaveFileName(this,
tr("Open Address book"), "",
tr("Address book (*.*);;All Files (*)"));
Данный фрагмент открывает данную папку для сохранения в нее выбранного файла.
Как выбрать и сохранить файл?
Есть поле lineEdit, где отображается путь выбранного файла для сохранения.
Ответы (1 шт):
Автор решения: needKVAS
→ Ссылка
После получения пути для сохранения с помощью QFileDialog::getSaveFileName необходимо самостоятельно создать/сохранить конечный файл, например, с помощью QFile. Пример копирования файла по заданному пути:
QString fileName = QFileDialog::getSaveFileName(this,
tr("Open Address book"), "",
tr("Address book (*.*);;All Files (*)"));
QString oldFile = lineEdit->text(); //Получаем путь старого файла
if (QFile::exists(oldFile)) {//Если старый файл существует
QFile::remove(fileName); //Удаляем файл по пути назначения
//(Если он существует копирование не произойдёт)
bool result = QFile::copy(oldFile, fileName); //Копируем старый файл по новому пути
if (result) {
//Если result==true файл успешно скопирован
}
}