QT开发中文网

Qt 保存文件路径时存在上级没有文件夹会自动创建吗?

在Qt中,保存文件时如果指定的路径中的上级文件夹不存在,系统默认是不会自动创建这些文件夹的。你需要在保存文件之前手动检查并创建这些上级文件夹。

你可以使用QDir类的mkpath()函数来实现递归创建多级目录。下面是一个示例代码:

#include <QCoreApplication>
#include <QDebug>
#include <QDir>

int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    QString filePath = "/path/to/new/folder/file.txt";

    QDir dir;
    if (dir.mkpath(QFileInfo(filePath).absolutePath())) {
        qDebug() << "Directories created successfully.";
        // 在这里执行保存文件操作
    } else {
        qDebug() << "Failed to create directories.";
    }

    return 0;
}

在这个示例中,我们使用QDirmkpath()函数来递归地创建指定路径中的上级目录。首先通过QFileInfo(filePath).absolutePath()获取到除了文件名的绝对路径,并传递给mkpath()函数进行创建。如果目录创建成功,则输出”Directories created successfully.“,接着你就可以在该路径下执行保存文件操作了。

请注意将示例代码中的”/path/to/new/folder/file.txt”替换为你要保存的实际文件路径。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=7800

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?