您的位置:首页 > 编程语言 > Qt开发

qt中获得指定磁盘的空间大小

2014-04-22 11:23 423 查看


qt中获得指定磁盘的空间大小

分类: QT 编程2011-08-22
20:39 1062人阅读 评论(0) 收藏 举报

qt磁盘integerc

定义头文件disktools.h

[cpp] view
plaincopy

#ifndef DISKTOOLS_H

#define DISKTOOLS_H

#include "QDebug"

#include <windows.h>

class DiskTools

{

public:

DiskTools();

quint64 getDiskFreeSpace(QString driver);

};

#endif // DISKTOOLS_H

disktools.cpp

[cpp] view
plaincopy

#include "disktools.h"

DiskTools::DiskTools()

{

}

quint64 DiskTools::getDiskFreeSpace(QString driver){

LPCWSTR lpcwstrDriver=(LPCWSTR)driver.utf16();

ULARGE_INTEGER liFreeBytesAvailable, liTotalBytes, liTotalFreeBytes;

if( !GetDiskFreeSpaceEx( lpcwstrDriver, &liFreeBytesAvailable, &liTotalBytes, &liTotalFreeBytes) )

{

qDebug() << "ERROR: Call to GetDiskFreeSpaceEx() failed.";

return 0;

}

return (quint64) liTotalFreeBytes.QuadPart/1024/1024/1024;

}

主程序中调用的代码

//获得盘符信息
driversList = QDir::drives();

qDebug()<<driversList.at(0).absoluteDir().absolutePath();

quint64 freeSpace = DiskTools::DiskTools().getDiskFreeSpace(QString("C:/"));

qDebug() << "剩余空间 " << freeSpace<< "GB";
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: