我是靠谱客的博主 眼睛大雪碧,最近开发中收集的这篇文章主要介绍C++ 获得本地磁盘盘符的容量信息,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

编程过程中涉及存储部分常常需要选择存储位置,此时比较关心的是各个磁盘盘符空间的总大小和剩余空间的大小。通过MFC的 List Control 控件可以将本地的磁盘容量信息显示出来并提供给用户选择的接口,是一种存储文件不错的思路。下面的代码实现了获得本地磁盘盘符容量信息的部分:


ULARGE_INTEGER nFreeBytesAvailable;
ULARGE_INTEGER nTotalNumberOfBytes;
ULARGE_INTEGER nTotalNumberOfFreeBytes;
WCHAR Drive[MAX_PATH] = { 0 };//初始化数组用以存储盘符信息
GetLogicalDriveStrings(MAX_PATH, Drive);//获得本地所有盘符存在Drive数组中
CString myDrive;
int i = 0;
while (Drive[i - 1] != '' || Drive[i] != '')//搜索数组尝试得到盘符信息,如果两者皆否,则数组搜索到尽头
{
myDrive = L"";
myDrive = Drive[i];
myDrive = myDrive + L":";//将盘符信息的格式调整为像“C:”这种格式,以作为GetDiskFreeSpaceEx函数的第一个参数
i += 4;
if (GetDiskFreeSpaceEx(myDrive,
&nFreeBytesAvailable,
&nTotalNumberOfBytes,
&nTotalNumberOfFreeBytes))//利用GetDiskFreeSpaceEx函数获得指定磁盘信息
{
long mywholespace = nTotalNumberOfBytes.QuadPart/1024/1024/1024;//得到磁盘总空间,单位为G
long myfreespace = nTotalNumberOfFreeBytes.QuadPart/1024/1024/1024;//得到磁盘剩余空间,单位为G
}
}






转载于:https://www.cnblogs.com/weixinhum/p/3916722.html

最后

以上就是眼睛大雪碧为你收集整理的C++ 获得本地磁盘盘符的容量信息的全部内容,希望文章能够帮你解决C++ 获得本地磁盘盘符的容量信息所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部