在我们写项目时,不可避免要保存数据、图片什么的,积累多了磁盘就满了,最近做的项目就是需要保存图片,其中就需要监控磁盘是否还够用,以便清空图片数据。对于获取系统磁盘,Windows系统已经提供了API来获取(如下),代码在WinBase.h中,我们在编码时需要把<windows.h>头文件包含进去
GetDiskFreeSpaceExW(
__in_opt LPCWSTR lpDirectoryName, //盘符名(如"C\")
__out_opt PULARGE_INTEGER lpFreeBytesAvailableToCaller,
__out_opt PULARGE_INTEGER lpTotalNumberOfBytes, //总容量
__out_opt PULARGE_INTEGER lpTotalNumberOfFreeBytes //剩余容量
);
#ifdef UNICODE
#define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
#else
下边我们就来获取下电脑上的磁盘及空间
#include <QtWidgets/QApplication>
#include <QString>
#include <QDebug>
#include <QDir>
#include <QFileInfoList>
#include <Windows.h>
#define GB (1024*1024*1024)
//获取磁盘容量
quint64 getDiskSpace(QString iDriver, bool flag)
{
//iDriver为盘符(例如"C\"),