获取磁盘使用空间和剩余空间

QT中获取磁盘可用空间     在我们写项目时,不可避免要保存数据、图片什么的,积累多了磁盘就满了,最近做的项目就是需要保存图片,其中就需要监控磁盘是否还够用,以便清空图片数据。对于获取系统磁盘,Windows系统已经提供了API来获取(如下),代码在WinBase.h中,我们在编码时需要把<windows.h>头文件包含进去 GetDiskFreeSpaceExW( __in_opt LPCW... 阅读详情

char crDrv[3];
CStringArray strArray;
_ULARGE_INTEGER  n64TotalNumberOfBytes,
 n64TotalNumberOfFreeBytes;
__int64  n64TotalFree = 0,n64TotalSpace = 0;
float fTotalFree,fTotalSpace,fTempFree,fTempTotal;
ULONG  lTotalFree = 0,lTotalSpace = 0,
   lTempFree = 0,lTempTotal = 0;
CString strInfo;
BOOL bSuccess;

for(int n=2;n<=25;n++)
{
CString str;
str.Format("%c://",n+'A');
strcpy(crDrv,str);
UINT nDrvType = GetDriveType(crDrv);
switch(nDrvType)
{
case DRIVE_FIXED:
{
strArray.Add(crDrv);
break;
}
default:
{
break;
}
}
}

for(n = 0;n < strArray.GetSize();n ++)
{
bSuccess = SHGetDiskFreeSpace(strArray.GetAt(n),
NULL,&n64TotalNumberOfBytes,
&n64TotalNumberOfFreeBytes);
n64TotalSpace += n64TotalNumberOfBytes.QuadPart;
n64TotalFree += n64TotalNumberOfFreeBytes.QuadPart;

lTempTotal = (ULONG)(n64TotalNumberOfBytes.QuadPart/1024);
lTempFree = (ULONG)(n64TotalNumberOfFreeBytes.QuadPart/1024);
fTempTotal = (float)lTempTotal;
fTempTotal = fTempTotal/1024/1024;
fTempFree = (float)lTempFree;
fTempFree = fTempFree/1024/1024;

strInfo.Format("%s 容量: %4.2fGB,可用空间: %4.2fGB.",
strArray.GetAt(n),fTempTotal,fTempFree);
AfxMessageBox(strInfo);
}

lTotalSpace = (ULONG)(n64TotalSpace/1024);
lTotalFree = (ULONG)(n64TotalFree/1024);
fTotalSpace = (float)lTotalSpace;
fTotalSpace = fTotalSpace/1024/1024;
fTotalFree = (float)lTotalFree;
fTotalFree = fTotalFree/1024/1024;

strInfo.Format("总容量: %4.2fGB,总共可用空间: %4.2fGB.",
fTotalSpace,fTotalFree);
AfxMessageBox(strInfo);


获取磁盘的盘符和剩余空间是我们经常需要用到的功能之一,下面我将介绍如何使用 C++ 来实现这个功能。 GetLogicalDrives 函数可以获取所有逻辑磁盘的信息,而 GetDiskFreeSpaceEx 函数可以获取指定磁盘的剩余空间信息。在上面的代码中,我们使用了一个 vector 缓冲区来存储获取到的盘符信息。如果是逻辑磁盘,我们将字母转化为盘符,然后使用 GetDiskFreeSpaceEx 函数获取剩余空间信息,并输出到控制台上。获取磁盘的盘符和剩余空间是我们经常需要用到的功能之一,下面我将介绍如何使用 C++ 来实现这个功能。通过上面的代码,我们可以方便地获取磁盘的盘符和剩余空间信息。 阅读详情

相关推荐

VC++获取磁盘剩余空间(附源码)

VC++常用功能封装代码一系列文章与源码 (打广告,哈哈,看看一系列再决定要不要订阅) https://blog.youkuaiyun.com/kaizi318/article/details/108846326 源代码demo已上传到百度网盘:永久生效 ,代码实现了获取任一磁盘的剩余空间,返回MB 和GB 主要是用到了以下函数: //windows api WINBASEAPI BOOL WINAPI GetDiskFreeSpaceExA( _In_opt_ LPCSTR lpDir...

Keivin 1399

获取磁盘使用空间和剩余空间(代码)

char crDrv[3];CStringArray strArray;_ULARGE_INTEGER  n64TotalNumberOfBytes, n64TotalNumberOfFreeBytes;__int64  n64TotalFree = 0,n64TotalSpace = 0;float fTotalFree,fTotalSpace,fTempFree,fTempTotal;ULON

酷狗的窝(kugou123) 1473

获取磁盘类型及剩余空间

获取磁盘类型及剩余空间 GetDiskFreeSpaceEx GetDriveTypeW GetVolumeInformation

C语言获得磁盘剩余空间和总空间

C语言获得磁盘剩余空间和总空间 http://blog.sina.com.cn/s/blog_95c607dd0101i3wx.html //C语言获得磁盘剩余空间和总空间 #include <windows.h> #include <stdio.h> typedef BOOL (WINAPI *PGETDISKFREESPACEEX)(LPCSTR,    PULARGE_INTEGER, PULARGE_INTEGER, PULARGE_INTEGER

爱她就要努力 2578

VS2017 windows下 c++ 检测磁盘可用空间,空闲空间,总空间,剩余空间。获得c,d,盘空间。

VS2017 windows下 c++ 检测磁盘可用空间,空闲空间,总空间,剩余空间。获得c,d,盘空间。

简单易懂的AXI_Lite 总线详解

简单易懂的AXI_Lite 总线详解 1、前言 AXI_LITE协议主要应用于Xilinx的ZYNQ芯片构架下的ARM和FPGA之间的数据读写,更偏向于单个寄存器的读写。 2、AXI总线与ZYNQ的关系 AXI(Advanced eXtensible Interface)本是由ARM公司提出的一种总线协议,Xilinx从6系列的FPGA开始对AXI总线提供支持,此时AXI已经发展到了AXI4这个版本,所以当你用到Xilinx的软件的时候看到的都是“AIX4”的IP,如Vivado打包一个AXI IP的时候,

m0_46642108的博客 8492

磁盘空间检查

// 磁盘剩余空间是否足够保存图片 void CSequencer::IsDiskSpaceEnough(int nChipIndex) {  // 获取保存磁盘的剩余空间  USES_CONVERSION;  ULONGLONG totalFreeBytes;// 总剩余空间  ULONGLONG needSpaceBytes;// 需要的空间  ULARGE_INTEGER nT

ypchen001的专栏 555

【超详细】C#的单例模式

本文详细介绍了C#中的单例设计模式,包括两种实现方式:普通类泛型单例(Singleton<T>)和基于MonoBehaviour的组件单例(MonoSingleton<T>)。单例模式通过私有构造、静态私有实例和公共访问入口确保全局唯一实例,具有节省资源、保证数据一致性等优势。文章分别阐述了两者的核心原理、代码实现、使用场景及注意事项,并提供了日志管理器和音效管理器的具体应用示例。特别强调了多线程安全、初始化时机和避免过度使用等重要原则,为Unity开发中合理运用单例模式提供了全面指导。

grapefruit_lyy的博客 1533

计算tf卡的剩余和已用内存

①剩余内存算法if(err)else}else{else}else{②已用内存算法if(err)else}else{else}else{

weixin_72940803的博客 299

深入解析:如何基于开源p-net快速开发Profinet从站服务

开源p-net协议栈为工业设备开发者打开了通往Profinet世界的大门。随着工业互联网的发展,软协议栈方案将在边缘计算领域展现更大潜力。该文章完整实现了PROFINET从站的核心功能,可直接作为产品开发的基础框架。实际部署时需根据具体硬件平台调整网络驱动和实时性配置。

极地星辰 3880

AI大模型API中转站选型指南:12项关键指标与实战评估

随着AI大模型技术的快速迭代,企业面临着一个核心挑战:如何在基础模型频繁更新的背景下,为业务系统选择稳定可靠的API中转服务?本文基于真实生产环境测试数据,从12个关键维度系统评估主流API中转站平台,帮助技术团队在模型快速演进的生态中做出科学选型决策。 1. API中转站的核心价值与业务场景 1.1 什么是API中转站 API中转站(API Gateway/Aggregator)是连接业务系统与多个大模型厂商的中间层服务。它通过统一的接口封装了不同厂商的API协议差异,为企业提供标准化的模型调用能力。在实

weixin_29056101的博客 442

android使用内存磁盘空间,Android获取cpu使用率,剩余内存和硬盘容量.doc

Android获取cpu使用率,剩余内存和硬盘容量内存信息在proc/meminfo下有详细的内存使用情况,我这里获取的内存信息就是从这个文件里获取的.获取到详细的内存信息后根据我自己的需求,从bufferdreader中单独抽取出来了剩余的内存容量.span style "font-family:Microsoft YaHei;font-size:14px;" Runtime runtime ...

weixin_42342010的博客 379

制造业与工业知识图谱应用

在全球数字化转型背景下,制造业面临创新周期缩短、质量管控精细化等挑战。知识图谱技术通过结构化表示工业知识,为智能制造提供关键技术支撑。工业知识图谱具有专业性强、多源异构数据融合、实时性要求高等特点,其构建流程涵盖本体设计、知识抽取与整合等环节。研究显示,知识图谱与大模型结合可提升工业场景的智能化水平,在设备故障诊断、供应链优化等领域具有显著应用价值。该技术有望成为制造业数字化转型的核心驱动力。

分享一些感兴趣的技术方面 1440

qt获取剩余空间最大的磁盘

思路:先获取所有磁盘号,再获取它的剩余空间,将磁盘号和剩余空间放入到map当中。最后遍历map找到剩余空间最大的那个。 //获取所有磁盘并将剩余空间放到map中去 QFileInfoList list = QDir::drives(); QMap<quint64, QString> diskmap; for (int i = 0; i < list.count(); i++) { QString str = list....

dzhongjie的博客 2148

【20260309】【亲测可用】【异常】Get https://registry-1.docker.io/v2/: net/http: request canceled

【异常】Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection。

奶爸的编程之路,也就一周冷个三天 2万+

uniapp - 解决App端报错reportJSException >>>> exception function:createInstanceContext, exception:white sc

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,uniApp报错,reportJSException>>>>exceptionfunction:createInstanceContext,exception:whitescreencausecreateinstanceContextfailed,运行自定义基座时白屏,uniapp项目运行白屏reportJSException,检查没问题依旧报错,第三方库插件,组件,uniapp打包调试

🏆 前端领域优质创作者 1万+

获取磁盘剩余空间 C++ &Qt &C# 各种坑类型转换

直接干!! 一、QT & 纯C++ #include <string> //函数声明 double getDiskFreeSpace(LPCWSTR lpcwstrDriver); int main(int argc, char *argv[]) { //C++: string转LPCWSTR //具体driver路径可以根据文件目录自己裁切,...

qq_35139974的博客 462

【Android Performance】Android CPU绑核实战:从taskset到cpuset的完整调优指南

本文系统讲解Android系统中的CPU绑核(CPU Affinity)技术,涵盖用户空间的taskset命令行绑核、内核cpuset分组机制的原理与操作、进程级与线程级绑核的代码实现、以及中断绑核的底层方法。文中深入拆解CPU亲和性掩码的计算规则、各cpuset分组的默认策略差异、绑核后的验证手段及常见踩坑场景,并配有多项实操命令与C代码示例。适合从事Android系统性能调优、进程调度优化的开发者阅读。

weixin_44081096的博客 1312

python磁盘可用空间_Python实现获取磁盘剩余空间的2种方法

本文实例讲述了Python实现获取磁盘剩余空间的2种方法。分享给大家供大家参考,具体如下:方法1:import ctypesimport osimport platformimport sysdef get_free_space_mb(folder):""" Return folder/drive free space (in bytes)"""if platform.system() == 'W...

weixin_39559071的博客 351

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

C++:获取磁盘盘符以及剩余空间(附带源码)

C++:获取磁盘盘符以及剩余空间(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 995

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

如何查看磁盘剩余空间

最常用的命令是 df -h,它可以快速显示所有挂载点的剩余空间。如果需要更详细的信息,可以使用 lsblk -f。对于图形化界面,可以使用 baobab或其他磁盘管理工具。

鸭梨的博客 2323

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

qt 计算磁盘剩余空间,包括磁盘总空间

开发环境qt,调用windows API,获取磁盘总空间和剩余空间,直接上代码 //求磁盘剩余空间 quint64 getDiskFreeSpace(QString driver) { QString strDiver; LPCWSTR lpcwstrDriver=(LPCWSTR)driver.utf16(); ULARGE_INTEGER liFreeBytesAvailable, liTotalBytes, liTotalFreeBytes; i

aoxuestudy的专栏 1154

获取磁盘剩余空间

方法一: import java.io.BufferedReader; import java.io.File; import java.io.InputStreamReader; public class GetDiskSpaceInfo { public static void main(String[] args) { try { // File.l

giianhui的专栏 5274

MFC 获取盘符剩余容量

CString firstchar = strDestFileDirectory.Mid(0,1); CString strRootPath=firstchar + L":\\"; DWORD dwSectorsPerCluster=0;//每簇中扇区数 DWORD dwBytesPerSector=0;//每扇区中字节数 ...

Sayesan的专栏 1292
上一篇: 堆和栈的区别
下一篇: 获取CPU序列号
goingup
博客等级 码龄22年 52粉丝 158原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值