我希望用户能够输入将保存为 xml 文件的文件的名称。目前在 Windows 和 Mac 上,如果您输入“test”作为文件名,它将自动添加我想要的“.xml”。不幸的是,在测试 Linux 构建时,我发现输入不带扩展名的文件名会保存为普通文件。用户必须在文件字符串中指定扩展名(即“test.xml”),以便它以正确的格式保存。
我正在使用的代码如下。这是一个 Qt 错误还是有一种方法可以在 Qt 中指定如果没有找到它应该添加一个扩展?
// Get value for "dir". If the setting doesn't exist then use
// the the path in "defaultsave.directory"
QString prevPath = prevValues.value("dir", QString::fromStdString(
ConfigService::Instance().getString("defaultsave.directory"))).toString();
QString filter;
filter.append("Files (*.xml)");
filter += ";;AllFiles (*.*)";
QString groupingFile = QFileDialog::getSaveFileName(this, "Save Grouping file as", prevPath, filter);