这个不是我自己写的,我也还没有测试过,不知道运行的效率怎么样,不知道占用空间占用资源多不多,就是我可能会用上,我先记录在这里:
http://hi.baidu.com/mmforever/blog/item/685430ad51b608094b36d69e.html
例如可以用以下方法:
其中参数path所传递的值是所要查看的文件夹的绝对路径!
首先要导入System.IO
VB.NET
'获取某个文件夹的大小
Function getDirectorySize(ByVal path As String) As Long
Dim dirInfo As New DirectoryInfo(path)
Dim sumSize As Long = 0
Dim fsInfo As FileSystemInfo
For Each fsInfo In dirInfo.GetFileSystemInfos()
If (fsInfo.Attributes.ToString.ToLower = "directory") Then
sumSize += getDirectorySize(fsInfo.FullName)
Else
Dim fiInfo As New FileInfo(fsInfo.FullName)
sumSize += fiInfo.Length
End If
Next
getDirectorySize = sumSize
End Function
C#
//获取某个文件夹的大小
public static long getDirectorySize(string path)
{
DirectoryInfo dirInfo=new DirectoryInfo(path);
long sumSize=0;
FileSystemInfo fsInfo;
foreach(fsInfo in dirInfo.GetFileSystemInfos())
{
if(fsInfo.Attributes.ToString().ToLower() == "directory")
{
sumSize+=getDirectorySize(fsInfo.FullName);
}
else
{
FileInfo fiInfo=new FileInfo(fsInfo.FullName);
sumSize+=fiInfo.Length;
}
}
return sumSize;
}
关键字:ASP.NET 文件大小 文件夹大小 Directory File