我希望用户能够输入一个文件名,该文件将保存为XML文件。在Windows和Mac上,如果您输入"test"作为文件名,它会自动添加".xml",这正是我想要的。但遗憾的是,在测试Linux版本时,我发现输入没有扩展名的文件名会保存为普通文件。用户必须在文件字符串中指定扩展名(即"test.xml"),才能以正确的格式保存。
下面是我使用的代码。这是Qt的一个bug吗?还是有办法在Qt中指定如果未找到扩展名,应该添加扩展名呢?
下面是我使用的代码。这是Qt的一个bug吗?还是有办法在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);