🟣 C# / .NET 6+

Get The Office document cache Size Report (C#)

Recursively sums the size of the Office document cache, read-only (no deletion).

By WindowsScripting.com · 1 KB
OfficeCacheSizeReport.cs
// OfficeCacheSizeReport.cs
//
// Reports how much disk space the Office document cache is using, read-only.
//
// Usage: dotnet new console -o OfficeCacheSizeReport, replace Program.cs
// with this file, then dotnet run.

using System;
using System.IO;
using System.Linq;

string targetPath = Environment.ExpandEnvironmentVariables(@"%LOCALAPPDATA%\Microsoft\Office\16.0\OfficeFileCache");

if (!Directory.Exists(targetPath))
{
    Console.WriteLine($"{targetPath} does not exist on this machine.");
    return;
}

// IgnoreInaccessible (the EnumerationOptions default) skips subfolders we
// can't read instead of throwing — GetFiles(pattern, SearchOption) does not.
var enumOptions = new EnumerationOptions { RecurseSubdirectories = true, IgnoreInaccessible = true };
var files = new DirectoryInfo(targetPath).GetFiles("*", enumOptions);
long totalBytes = files.Sum(f => f.Length);

Console.WriteLine(targetPath);
Console.WriteLine($"  Files: {files.Length}");
Console.WriteLine($"  Total size: {(totalBytes / 1024.0 / 1024.0):F2} MB");