有谁知道如何单独计算文件系统占用的空间量?
我正在尝试计算磁盘中文件和目录占用的空间大小,而无需遍历整个磁盘。
这是一个 C++ 示例:
ULARGE_INTEGER freeBytesAvailable, totalNumberOfBytes, totalNumberOfFreeBytes;
GetDiskFreeSpaceEx(NULL, &freeBytesAvailable, &totalNumberOfBytes, &totalNumberOfFreeBytes);
mCurrentProgress = 0;
mTotalProgress = totalNumberOfBytes.QuadPart - totalNumberOfFreeBytes.QuadPart;
但问题是我需要排除文件系统的大小,但我不知道是否可能或者是否有 API 来获取此信息。
最佳答案
没有意义。在 NTFS 上,小文件存储在 目录中。我的意思是,它们是内联的。保存文件名的同一扇区也保存文件内容。因此,您不能将该扇区算作“用于文件”或“用于文件系统开销”。
关于c++ - 计算 Windows 中的 NTFS 和 FAT 文件系统大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7487330/