//
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
=
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;}}}
转载请注明原文地址: https://ibbs.8miu.com/read-800167.html