QFileDialog: la adición de extensión automáticamente al guardar el archivo?
-
21-09-2019 - |
Pregunta
Cuando se utiliza un QFileDialog
guardar un archivo y especificar la extensión (como * .pdf) y el usuario escribe un nombre sin esta extensión, también el archivo guardado no tiene esta extensión.
Ejemplo-Code:
QFileDialog fileDialog(this, "Choose file to save");
fileDialog.setNameFilter("PDF-Files (*.pdf)");
fileDialog.exec();
QFile pdfFile(fileDialog.selectedFiles().first());
Ahora, cuando el usuario introduce "foo" como el nombre, el archivo se guarda como "foo", no como "foo.pdf". Por lo que el QFileDialog
no agrega la extensión automáticamente. Mi pregunta: ¿Cómo puedo cambiar esto
Solución
Se puede usar QFileDialog :: setDefaultSuffix () :
Esta propiedad se mantiene sufijo añadido al nombre del archivo si se ha especificado ningún otro sufijo.
Esta propiedad especifica una cadena que se agregará al nombre de archivo si no tiene ya sufijo. El sufijo se utiliza normalmente para indicar el tipo de archivo (por ejemplo, "txt" indica un archivo de texto).