QFileDialog在linux中没有文件扩展名创建

时间:2017-09-28 14:26:02

标签: qt qt4 qt-designer

我正在使用QFileDialog

在Windows和Linux中创建一个文件
fileName = QFileDialog::getSaveFileName(this, tr("Create project"), applicationPath,tr("Files (*.MSC)"));

在Windows中,文件创建为path / to / file.MSC 但在linux文件中创建为path / to / file

为什么.MSC没有附加在LInux中,我们是否需要为此

使用其他功能

1 个答案:

答案 0 :(得分:0)

以下示例在Linux上运行正常。您可以使用文本" test"获取文件myfile.MSC。写在上面。

#include <iostream>
#include <QApplication>
#include <QFileDialog>
#include <QString>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QString applicationPath = QDir::currentPath() + "/myfile.MSC";

    QString fileName = QFileDialog::getSaveFileName(0,
                                                    QApplication::tr("Create project"),
                                                    applicationPath,
                                                    QApplication::tr("Files (*.MSC)"));

    if (fileName.isEmpty())
        return -1;
    else {
        QFile file(fileName);
        if (!file.open(QIODevice::WriteOnly)) {
            std::cout << "error\n";
            return -1;
        }

        QDataStream out(&file);
        out << "test";
    }

    return a.exec();
}