C# 磁盘空间管理

// Disk 取得磁盘空间 或 指定文件夹使用情况
using  System;
using  System.IO;
using  System.Management; 
namespace  Host.AdminManager.Inc
{
///   <summary>
///  Disk 的摘要说明。
///   </summary>
public   class  Disk
{
public  Disk()
{
//
//  TODO: 在此处添加构造函数逻辑
//
}
// 取得disk大小
public   string  DiskSize( string  path)
{
ManagementObject size 
=   new  ManagementObject( " win32_logicaldisk.deviceid= " + path);
size.Get(); 
UInt64 b 
=   1024 ;
UInt64 a 
=  (Convert.ToUInt64(size[ " Size " ]) / b) / b;
return  a.ToString();
}
// 取得文件夹大小
public   string  size( string  path,  string  utterlyPath , out   int  chang)
{
UInt64 t1024 
=   1024 , t10  =   10 ;
UInt64 v 
=  FolderSize(path,utterlyPath);
=  v / t1024;
chang 
=  Convert.ToInt32(v / t10);
return  v.ToString();
}
public  UInt64 FolderSize( string  path,  string  utterlyPath)
{
UInt64 Fsize 
=   0 ;
// try {
Fsize  =  FolderFileSize(path);
DirectoryInfo [] folders 
=  ( new  DirectoryInfo(path)).GetDirectories();
foreach (DirectoryInfo folder  in  folders)
{
if  (folder.FullName  !=  utterlyPath)
Fsize 
+=  FolderSize(folder.FullName, utterlyPath);
}
// }
// catch(Exception ex)
// {
// MessageBox.Show(ex.Message);
// }
return  Fsize;


public  UInt64 FolderFileSize( string  path)
{
UInt64 size 
=   0 ;
// try
// {
FileInfo [] files  =  ( new  DirectoryInfo(path)).GetFiles();
foreach (FileInfo file  in  files)
{
size 
+=  (UInt64)file.Length;
}
// }
// catch(Exception ex)
// {
// MessageBox.Show(ex.Message);
// }
return  size;
}
}
}

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值