Qt利用QAxObject和系统日期命令修改文件的修改时间和创建时间

2023-12-20 21:52

本文主要是介绍Qt利用QAxObject和系统日期命令修改文件的修改时间和创建时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

#include <QApplication>
#include <QAxObject>
#include <QDebug>
#include <QtCore>
#include <stdlib.h>//思路:
//1、利用windows的"date"和"time"命令,设置系统时间;注意:需要管理员权限
//2、利用先读取再写入相同的数据并保存,来修改“修改时间”
//3、利用文件复制修改“创建时间”int main(int argc, char *argv[])
{QApplication a(argc, argv);//修改系统日期和时间system("date 2020-01-02");system("time 10:20:30");// 创建Excel应用程序对象QAxObject excel("Excel.Application");// 启动Excel应用程序excel.setProperty("Visible", false); //设置是否显示xlsx的图形界面// 获取工作簿对象QAxObject *workbooks = excel.querySubObject("Workbooks");QString filePath  = "C:/Users/Zhang/Desktop/test.xlsx";// 打开Excel文件QAxObject *workbook = workbooks->querySubObject("Open(const QString&)", filePath);// 获取第一个工作表QAxObject *worksheet = workbook->querySubObject("Worksheets(int)", 1);// 读取单元格的值QAxObject *cell = worksheet->querySubObject("Cells(int,int)", 1, 1);QVariant cellValue = cell->property("Value");//qDebug() << "Cell value: " << cellValue.toString();// 写入单元格的值cell->setProperty("Value", cellValue);// 保存并关闭工作簿workbook->dynamicCall("Save()");workbook->dynamicCall("Close()");// 退出Excel应用程序excel.dynamicCall("Quit()");//【利用文件复制修改创建时间】system("date 2019-01-02");system("time 10:20:30");QFile::copy(filePath, filePath + "_new.xlsx");return 0;
}
QT -= gui
QT += axcontainerCONFIG += c++11 console
CONFIG -= app_bundleDEFINES += QT_DEPRECATED_WARNINGSSOURCES += \main.cpp

 环境Qt 5.9.7  + Office/Excel 2010

这篇关于Qt利用QAxObject和系统日期命令修改文件的修改时间和创建时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/517631

相关文章

Qt中QGroupBox控件的实现

《Qt中QGroupBox控件的实现》QGroupBox是Qt框架中一个非常有用的控件,它主要用于组织和管理一组相关的控件,本文主要介绍了Qt中QGroupBox控件的实现,具有一定的参考价值,感兴趣... 目录引言一、基本属性二、常用方法2.1 构造函数 2.2 设置标题2.3 设置复选框模式2.4 是否

QT进行CSV文件初始化与读写操作

《QT进行CSV文件初始化与读写操作》这篇文章主要为大家详细介绍了在QT环境中如何进行CSV文件的初始化、写入和读取操作,本文为大家整理了相关的操作的多种方法,希望对大家有所帮助... 目录前言一、CSV文件初始化二、CSV写入三、CSV读取四、QT 逐行读取csv文件五、Qt如何将数据保存成CSV文件前言

Qt中QUndoView控件的具体使用

《Qt中QUndoView控件的具体使用》QUndoView是Qt框架中用于可视化显示QUndoStack内容的控件,本文主要介绍了Qt中QUndoView控件的具体使用,具有一定的参考价值,感兴趣的... 目录引言一、QUndoView 的用途二、工作原理三、 如何与 QUnDOStack 配合使用四、自

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Mysql表如何按照日期字段的年月分区

《Mysql表如何按照日期字段的年月分区》:本文主要介绍Mysql表如何按照日期字段的年月分区的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、创键表时直接设置分区二、已有表分区1、分区的前置条件2、分区操作三、验证四、注意总结一、创键表时直接设置分区

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法

《golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法》:本文主要介绍golang获取当前时间、时间戳和时间字符串及它们之间的相互转换,本文通过实例代码给大家介绍的非常详细,感兴趣... 目录1、获取当前时间2、获取当前时间戳3、获取当前时间的字符串格式4、它们之间的相互转化上篇文章给大家介