我在使用授权获取请求 - Files.list获取文件时使用 'quotaBytedUsed' 属性。
我正在将获得的长值转换为适当的 KB/MB/Gb 文件大小。
但是,获得的所有文件夹的大小为 1 KB。此值不反映文件夹中所有内容大小的总和。
我怎样才能得到这个总和(如果可能的话,对服务器没有任何额外的请求)?
用于将“quotaBytesUsed”转换为文件大小的代码是
private string[] SizeSuffixes = new[] { "B", "KB", "MB", "GB", "TB" };
private string SizeConvert(long? fileSize)
{
if (!fileSize.HasValue)
return "";
var size = fileSize.Value;
if (size <= 1024)
{
return "1 KB";
}
var suffixIndex = 0;
while (size > 1024)
{
size = size / 1024;
suffixIndex++;
}
return size.ToString(CultureInfo.InvariantCulture.NumberFormat) + " " + SizeSuffixes[suffixIndex];
}