Percorso / dimensione del file in C #
-
03-07-2019 - |
Domanda
Come ottenere la directory dei file di un file (C: \ myfolder \ subfoler \ mydoc.pdf). Voglio anche aggiungere la dimensione delle sottocartelle e infine la dimensione della cartella principale. Questo è per un CLR .NET che devo integrare con SQL Server 2005 per un rapporto SSRS.
Soluzione
Puoi usare GetDirectoryName , per ottenere solo il percorso della directory del file:
using System.IO;
string directoryName = Path.GetDirectoryName(@"C:\myfolder\subfolder\mydoc.pdf");
// directoryName now contains "C:\myfolder\subfolder"
Per calcolare la dimensione della directory e della sottodirectory, puoi fare qualcosa del genere:
public static long DirSize(DirectoryInfo d)
{
long Size = 0;
// Add file sizes.
FileInfo[] fis = d.GetFiles();
foreach (FileInfo fi in fis)
{
Size += fi.Length;
}
// Add subdirectory sizes.
DirectoryInfo[] dis = d.GetDirectories();
foreach (DirectoryInfo di in dis)
{
Size += DirSize(di);
}
return(Size);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow