导航:首页 > 文件处理 > vb文件夹多大

vb文件夹多大

发布时间:2025-05-28 23:39:50

A. vb中如何查看整个文件夹地大小

Public Function GetFolderSize(Folder As String) As Long
'取得文件夹的大小,包含子目录
On Error GoTo er
Dim Tmp As String
Dim TotalSize As Long
Dim FolderBuff() As String
Dim FolderMax As Long
Dim BuffMax As Long

cur_Folder = IIf(Right(Folder, 1) = "\", Folder, Folder & "\")
Tmp = Dir(cur_Folder & "*.*", vbDirectory)

Do Until Tmp = ""
If Tmp <> "." And Tmp <> ".." Then
If VBA.GetAttr(cur_Folder & Tmp) = vbDirectory Then '目录
FolderMax = FolderMax + 1
If FolderMax >= BuffMax Then
BuffMax = BuffMax + 1000
ReDim Preserve FolderBuff(BuffMax)
End If
FolderBuff(FolderMax) = cur_Folder & Tmp

Else
TotalSize = TotalSize + FileLen(cur_Folder & Tmp)
End If
End If
Tmp = Dir()
Loop

For i = 1 To FolderMax
TotalSize = TotalSize + GetFolderSize(FolderBuff(i)) '递归目录
Next i
er:
GetFolderSize = TotalSize
Erase FolderBuff
End Function

Private Sub Command1_Click()
'调试部分,供参考
Dim Folder As String
Folder = VBA.Environ("windir")
foldersize = GetFolderSize(Folder)

If foldersize > 1000000000 Then
Tmp = Format(foldersize / 1000000000, "0.00") & " G"
ElseIf foldersize > 1000000 Then
Tmp = Format(foldersize / 1000000, "0.0") & " M"
ElseIf foldersize > 1000 Then
Tmp = Format(foldersize / 1000, "0.0") & " k"
Else
Tmp = Format(foldersize)
End If
MsgBox "文件夹:" & Folder & vbCrLf & "大小:" & Tmp, vbInformation
End Sub

B. 怎么用VB给文件夹加密

1、由于采用二进制读取文件的方式,因此加密时一般可以不考虑文件类型。
2、这里只进行一次异或运算,如有需要可以进行多次异或运算。
3、此加密算法速度快,当然加密强度也低 ;
参考代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

'-----------------------------------------------------------------------
'函数说明: 使用异或运算加密文件(可加密大部分文件)
'参数说明: key - 密钥
' fileName - 普通文件名,
' encryptFileName - 加密后的文件名
'返回值: true - 成功,false - 失败
'-----------------------------------------------------------------------
Private Function XOR_Encrypt(key As Integer, fileName As String, encryptFileName As String) As Boolean
On Error GoTo errHandler
Dim inputFileNo As Integer
Dim fileBytes() As Byte
Dim length As Long
XOR_Encrypt = False
'打开文件并保存在二进制数组中
inputFileNo = FreeFile
Open fileName For Binary As #inputFileNo
length = LOF(inputFileNo)
If length = 0 Then
MsgBox "退出加密:文件内容为空!", vbInformation, "提示"
Exit Function
End If
ReDim fileBytes(length - 1) As Byte
Get inputFileNo, , fileBytes()
Close #inputFileNo
'将该二进制数组进行异或加密
Dim i As Long
For i = LBound(fileBytes) To UBound(fileBytes)
fileBytes(i) = fileBytes(i) Xor key
Next
'将异或加密后的二进制数组保存在新的文件中
Dim outputFileNo As Integer
outputFileNo = FreeFile
Open encryptFileName For Binary As #outputFileNo
Put outputFileNo, , fileBytes
Close #outputFileNo
XOR_Encrypt = True

errHandler:
If Err.Number Then
MsgBox "加密过程中出错:" & Err.Description, vbCritical, "错误"
XOR_Encrypt = False
Resume Next
End If
End Function

阅读全文

与vb文件夹多大相关的资料

热点内容
苹果appstore密码什么格式 浏览:667
程序员阅读源码在哪里找 浏览:212
dateintervalphp 浏览:690
王峰程序员 浏览:976
怎么设置服务器别人可以访问 浏览:113
python写n阶乘之和 浏览:848
基于socket的网络编程 浏览:784
phpwhois查询 浏览:549
程序员到工作日常 浏览:64
蚁群算法策略 浏览:227
数控编程学习视频 浏览:34
编程线性代数 浏览:727
探探安卓如何找主播 浏览:955
三什么服务器 浏览:374
路由器怎么搭建服务器地址 浏览:294
迅雷怎么打开php文件 浏览:314
金蝶服务器的ip地址怎么填写 浏览:865
安卓手机如何看app数量 浏览:726
云服务器报价租赁费用 浏览:959
电脑上服务器地址在哪查 浏览:935