首页 > 其他分享 >Qt实现在项目同级文件夹新建保存数据的文件夹,通过按钮新建文件

Qt实现在项目同级文件夹新建保存数据的文件夹,通过按钮新建文件

时间:2023-09-23 13:00:44浏览次数:45  
标签:Qt 新建 文件夹 QString file 按钮 include

新建文件夹

需要的头文件

#include <QFile>
#include <QTextStream>
#include <QDir>

通过一个函数来判断是否存在指定的文件夹,如果存在则跳过,否则创建文件夹。

bool Widget::isExists()
{
    QString folderName = "dataFolder"; // 文件夹名称
    QString path = QDir::currentPath() + "/.." + "/" + folderName; // 文件夹路径
    QDir dir;
    if (dir.exists(path)) {
        qDebug() << "Folder already exists:" << folderName;
        return true;
    } else {
        if (dir.mkdir(path)) {
            qDebug() << "Folder created successfully:" << folderName;
            return true;
        } else {
            qWarning() << "Failed to create folder:" << folderName;
        }
    }
    return false;
}

通过按钮来点击生成txt文件,保存在刚刚生成的文件夹下

void Widget::on_pushButton_clicked()
{
    if(isExists()){
        static int fileCount = 0; // 记录文件计数器
        QString fileName = QString("../dataFolder/example%1.txt").arg(fileCount); // 设置文件名
        QFile file(fileName);
        if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
            QTextStream stream(&file);
            for(int i = 0; i < 1200; i++){
                stream << "This is example " << fileCount << "."; // 写入数据
            }
            file.close();
            qDebug() << "File created and data written successfully:" << fileName;
            fileCount++; // 计数器加一,为下一个文件准备名称
        } else {
            qWarning() << "Failed to create or open the file:" << fileName;
        }
    }
}

标签:Qt,新建,文件夹,QString,file,按钮,include
From: https://www.cnblogs.com/LeoTao-777/p/17724239.html

相关文章

  • QT中QLineEdit设置IP输入限制
    QT中设置QLineEdit只允许输入IP格式的数据,我们可以使用正则表达式,不过在QT5和QT6中有一点点不一样(QT5中是QRegExp和QRegExpValidator,QT6中是QRegularExpression和QRegularExpressionValidator):QT5#include<QRegExp>#include<QRegExpValidator>ui->lineEdit->setValidator(......
  • Qt学习01
    一、Qt简介1、Qt是什么图形用户界面应用程序开发框架,是对底层应用编程接口进行了面向对象的封装是一套基于C++语言的库,专注但不限于图形用户界面程序开发,还可以进行系统调用、网络编程、数据库、2D/3D图形处理2、为什么选择Qt基于C++语言,使用简单、易用,有优秀的跨平台特性,支......
  • Qt学习02
    一、信号和槽1、什么是Qt的信号当用户或者系统满足一定条件或触发某些动作时,导致窗口或者控件、类发生一些改变时,它们就会发射出一个对应的信号。信号可以预先连接一个特殊的函数,当信号被触发时,就会自动调用该函数,这样的函数就称为槽函数例如:QPushButton中的单击信号clicked信......
  • WTM(基于Blazor)访问共享文件夹
    有个需求,需要访问内网网络共享文件夹中的文件,有域控限制。一开始直接在本地映射一个网络驱动器,然后像本地磁盘一样访问共享文件夹里的文件,比如:Y:\。然后直接在程序中访问共享文件夹中的文件,如下代码:DirectoryInfodirectoryInfo=newDirectoryInfo(@"\\10.10.65.14\文件夹"......
  • Qt3D绘制光照效果
    直接给出一个例子供参考。此例子参考了以下博文中公开的代码并做了整理:Qt::QOpenGLWidget渲染带光照的立方体_D_Guco的博客-CSDN博客这里把立方体换成了四面体,贴图也换成了顶点的颜色。并对代码结构做了简化,以使读者更容易看懂。有兴趣的读者可以调节软件中相机位置、EYE位置......
  • 【C#】【Python】【实例】统计多个文件夹下的图片
    因工作需要繁琐的进行同一目录多个文件夹下的图片统计,便使用代码来解决。需求:统计的是多少个文件夹包含了图片,并非是统计有多少张图。 我们先用Python来创建一个现场环境(巩固巩固py知识):1importos23#根目录4root_path=r"C:\Users\Desktop\1111"56forit......
  • Qt开发学习笔记
    很久以前写的笔记,综合了很多内容,主要是来源于传智教育的Qt教学视频。时间久远,排版可能有点问题。Qt相关内容解释.pro文件解释QT+=coregui#Qt包含的模块greaterThan(QT_MAJOR_VERSION,4):QT+=widgets#大于4版本以上包含widget模块CONFIG+=c++11DEF......
  • QT chart图表(温度曲线实战)
    (文章目录)前言本篇文章开始将带大家学习QTchart图表,后面我们将完成一个小项目,动态温度曲线,并且将本项目移植到ARM开发板上使用DHT11实时检测温度湿度。一、QChart介绍QT的QChart是一个用于绘制各种类型图表的QT库。它提供了丰富的图表类型和绘制工具,能够方便地绘制出统计图......
  • CentOS7共享文件夹设置
    故障现象:使用VMwareWorkstation10在CentOS7上安装VMwareTools工具,总是出错,更换成VMwareWorkstation12Pro共享成功。软件环境:主机:windows7、虚拟机:VMwareWorkstation12Pro、客户机: CentOS7一、设置共享文件夹1、在VMwareWorkstation12Pro虚拟......
  • Qt 安装包制作
    Qt安装包制作新建模板小书匠更新提醒创建一个在线安装包,实现对用户的升级提醒。以下是实现更新提醒的必要步骤:1、将更新内容拷贝到package目录2、在package.xml文件中,为元素增加对应值3、使用repogen工具把更新内容创建为一个在线仓库,并在仓库的根目录生成Updates.xml4......