QDir和QFile的一些小知识——Qt

前言

我记性一直不好,特别是一些零碎的东西更是记不住。所以这里记录一下QDir和QFile常用到的一些小知识。

QDir的一些小知识点

创建文件路径()

保存文件时,当需要保存一定的文件结构时,则需要创建文件路径,这个时候就用到了QDirmkpathmkdir,区别是:mkpath可以创建所需的多级文件结构,而mkdir只能创建一级。所以通常用的是mkpath。

帮助上的描述是:

bool QDir::mkpath(const QString &dirPath) const
Creates the directory path dirPath.
The function will create all parent directories necessary to create the directory.

bool QDir::mkdir(const QString &dirName) const
Creates a sub-directory called dirName.

	QDir dir;
	if (!dir.exists(strfilepath))
	{
        dir.mkpath(strfilepath);
	}

 

删除文件夹(QDir)

删除指定的文件夹及其下面的文件

 QDir dir(m_strFilePath);
 dir.removeRecursively();

 

 路径中'/'和'\'之间的转换(QDir)

//将 '\' 转为 '/'
strFilePath=QDir::fromNativeSeparators(strFilePath);


//将 '/' 转为 '\'
strFilePath=QDir::toNativeSeparators(strFilePath);

QFile的一些小知识

计算文件的哈希值

            //计算哈希值
            QCryptographicHash srcHash(QCryptographicHash::Md5);
            QFile file(strPath);
            if(file.open(QIODevice::ReadOnly))
            {
                while(!file.atEnd())
                {
                    char buf[1024];
                    qint64 lineLength = file.readLine(buf, sizeof(buf));
                    if (lineLength != -1)
                    {
                        srcHash.addData(buf,lineLength);
                    }
                }
                file.close();
            }
            QString strSrcMD5=srcHash.result().toHex();

结束语

就这些吧,回头遇到后再补充。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值