当前位置: 首页 > web >正文

QT生成保存 Excel 文件的默认路径,导出的文件后缀自动加(1)(2)等等

//生成保存 Excel 文件的默认路径 QString MainWidget::getDefaultFilePath() const { QString basePath = pathEdit->text(); if (basePath.isEmpty() || !QDir(basePath).exists()) { basePath = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); } return QDir(basePath).filePath(QString("Data_%1.xlsx").arg(QDateTime::currentDateTime().toString("yyyyMMdd_HHmmss"))); }导出的文件后缀自动加(1)(2)等等

Avatar

QString MainWidget::getDefaultFilePath() const {QString basePath = pathEdit->text();if (basePath.isEmpty() || !QDir(basePath).exists()) {basePath = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation);}QDateTime currentDateTime = QDateTime::currentDateTime();QString baseFileName = QString("Data_%1").arg(currentDateTime.toString("yyyyMMdd_HHmmss"));QString fileName = baseFileName;int count = 1;// 检查文件是否存在,如果存在则添加序号while (QFile::exists(QDir(basePath).filePath(fileName + ".xlsx"))) {fileName = QString("%1(%2)").arg(baseFileName).arg(count++);}return QDir(basePath).filePath(fileName + ".xlsx");
}

修改说明:

  1. 生成基础文件名

    • 使用当前日期时间生成基础文件名,格式为 Data_YYYYMMDD_HHMMSS

  2. 检查文件是否存在

    • 如果文件已存在,则在基础文件名后添加序号 (1), (2) 等,直到找到一个未被使用的文件名。

  3. 返回完整路径

    • 返回带有唯一文件名的完整路径。

通过这种修改,每次导出文件时,系统会自动检查目标路径下是否已有同名文件。如果有,则在文件名后添加序号,确保文件名唯一,避免覆盖已有文件。

http://www.xdnf.cn/news/4218.html

相关文章:

  • 如何管理两个Git账户
  • 即开即用,封装 Flask 项目为 exe 文件实操步骤
  • QQ相册下载工具
  • 宁德时代区块链+数字孪生专利解析:去中心化身份认证重构产业安全底座
  • NoUniqueKey问题和Regular join介绍
  • Linux USB Gadget | 框架 / 复合设备实践 / Configfs 配置
  • CSS分栏布局
  • 【T2I】PLACE: Adaptive Layout-Semantic Fusion for Semantic Image Synthesis
  • vue2+element实现Table表格嵌套输入框、选择器、日期选择器、表单弹出窗组件的行内编辑功能
  • CentOS配置了镜像源之后依旧下载元数据失败
  • (二)毛子整洁架构(CQRS/Dapper/DomianEvent Handler)
  • 高效调用京东 API 实战:商品详情页实时数据采集接口开发指南​
  • C++ this关键字
  • python校园二手交易管理系统-闲置物品交易系统
  • ts axios中报 Property ‘code‘ does not exist on type ‘AxiosResponse<any, any>‘
  • PCIe控制逻辑介绍(一)
  • 【C/C++】new关键字解析
  • 说下RabbitMQ的整体架构
  • K-means
  • 一款独立于游戏外的键盘源按键辅助工具他来了
  • C#发送之前转换为JSON格式
  • 美妆集合体验馆的「AI 焕新」:从人工到智能管理的蜕变
  • FPGA设计如何快速入门?(内附学习视频)
  • Kotlin Lambda优化Android事件处理
  • 极端工况的高频电流探头精度优化
  • Python实例题:Python操作excel自动化开发
  • 6.5 行业特定应用:金融、医疗、制造等行业的定制化解决方案
  • 数据结构 --- 栈
  • 基于RT-Thread的STM32F4开发第二讲第一篇——ADC
  • Flutter 布局