临时文件类

概述

1、用于安全的创建1个全局唯一的临时文件

2、如何创建:调用open()方法就可以自动创建

3、打开方式为ReadWrite,可读可写

4、对象销毁时,对应的临时文件也会跟着自动删除

5、文件名是随机生成的,或者构造函数指定

常用方法:

构造函数

QTemporaryFile()//会随机生成文件名,临时文件的路径也由他自己确定
QTemporaryFile(const QString &templateName)//可以指定路径和文件名后缀

自己指定临时文件的路径和文件名后缀时,文件名部分要用XXXXXX(6个X,大写)占位,文件名仍然由QTemperoryFile自己来定:

比如:

//指定临时文件的路径为exe所在目录,且后缀为txt
QTemporaryFile file(
QCoreApplication::applicationDirPath()
+QDir::separator()
+"XXXXXX.txt");



结果:"C:/QTdemo/TemperoryFile/build/Desktop_Qt_6_7_0_MinGW_64_bit-Debug/debug/UsDiKc.txt"

设置是否自动删除

设置为false时,QTemperortFile对象销毁时,其对应的临时文件则不会销毁,需要手动在销毁前手动remove

void QTemporaryFile::setAutoRemove(bool b)

 打开临时文件

bool QTemporaryFile::open()

手动删除临时文件

//父类的方法
bool QFile::remove()

获取临时文件的绝对路径

//如果临时文件没有打开,那么返回空字符串
[override virtual] QString QTemporaryFile::fileName() const

静态方法

[static] QTemporaryFile *QTemporaryFile::createNativeFile(QFile &file)
  • 如果file还不是本机存在的文件,那么则会创建一个临时文件,复制file的内容,然后返回这个临时文件
  • 如果file已经是本机存在的文件,那么返回0

可能用到的场景:QFile file(/AA/BB/txt);这个文件没有打开而且不存在,还有这个文件指向网络中某个文件

学习链接:https://github.com/0voic

上一篇:诺奖印证产业方向,AI先行者晶泰科技开拓黄金赛道


下一篇:C++ 比大小