導航:首頁 > 文件處理 > 壓縮文件夾vb

壓縮文件夾vb

發布時間:2023-03-04 16:59:14

❶ 如何用VB代碼壓縮一個文件夾中的所有文件成一個壓縮包

DIR 可以
還可以用FSO 對象,來完成!

Dir 函數

返回一個 String,用以表示一個文件名、目錄名或文件夾名稱,它必須與指定的模式或文件屬性、或磁碟卷標相匹配。

語法

Dir[(pathname[, attributes])]

Dir 函數的語法具有以下幾個部分:

部分 描述
pathname 可選參數。用來指定文件名的字元串表達式,可能包含目錄或文件夾、以及驅動器。如果沒有找到 pathname,則會返回零長度字元串 ("")。
attributes 可選參數。常數或數值表達式,其總和用來指定文件屬性。如果省略,則會返回匹配 pathname 但不包含屬性的文件。

設置值

attributes 參數的設置可為:

常數 值 描述
vbNormal 0 (預設) 指定沒有屬性的文件。
vbReadOnly 1 指定無屬性的只讀文件
vbHidden 2 指定無屬性的隱藏文件
VbSystem 4 指定無屬性的系統文件
vbVolume 8 指定卷標文件;如果指定了其它屬性,則忽略vbVolume
vbDirectory 16 指定無屬性文件及其路徑和文件夾。

注意 這些常數是由 VBA 所指定的,在程序代碼中的任何位置,可以使用這些常數來替換真正的數值。

❷ VB 指定壓縮文件名的文件夾壓縮

用法: rar <命令> -<開關 1> -<開關 N> <壓縮文件> <文件...>
<@列表文件...> <解壓路徑\>

<命令>
a 添加文件到壓縮文件
c 添加壓縮文件注釋
cf 添加文件注釋
ch 改變壓縮文件參數
cw 寫入壓縮文件注釋到文件
d 刪除壓縮文件中的文件
e 解壓壓縮文件到當前目錄
f 刷新壓縮文件中的文件
i[參數]=<串> 在壓縮文件中查找字元串
k 鎖定壓縮文件
l[t,b] 列出壓縮文件[技術信息,簡潔]
m[f] 移動到壓縮文件[僅對文件]
p 列印文件到標准輸出設備
r 修復壓縮文件
rc 重建丟失的卷
rn 重命名壓縮文件
rr[N] 添加數據恢復記錄
rv[N] 創建恢復卷
s[名字|-] 轉換壓縮文件為自解壓格式或轉換回壓縮文件
t 測試壓縮文件
u 更新壓縮文件中的文件
v[t,b] 詳細列出壓縮文件[技術信息,簡潔]
x 用絕對路徑解壓文件

<開關>
- 停止掃描
ac 壓縮或解壓後清除存檔屬性
ad 添加壓縮文件名到目標路徑
ag[格式] 使用當前日期生成壓縮文件名
ao 添加具有壓縮屬性的文件
ap<格式> 添加路徑到壓縮文件中
as 同步壓縮文件內容
av 添加用戶身份校驗(僅注冊版本可用)
av- 禁用用戶身份校驗
c- 禁用注釋顯示
cfg- 禁用讀取配置
cl 名稱轉換為小寫
cu 名稱轉換為大寫
df 壓縮後刪除文件
dh 打開共享文件
dr 刪除文件到回收站
ds 對固實壓縮文件禁用名稱排序
dw 壓縮後清除文件
e[+]<屬性> 設置文件排除和包括屬性
ed 不添加空目錄
en 不添加"壓縮文件結束"標志
ep 從名稱中排除路徑
ep1 從名稱中排除基本目錄
ep2 展開為完整路徑
ep3 擴展路徑為包含盤符的完全路徑
f 刷新文件
hp[密碼] 同時加密文件數據和文件頭
id[c,d,p,q] 禁用消息
ieml[屬性] 用 E-mail 發送壓縮文件
ierr 發送所有消息到標准錯誤設備
ilog[名稱] 把錯誤寫到日誌文件(只有注冊版本可用)
inul 禁用所有消息
ioff 完成一個操作後關閉 PC 電源
isnd 啟用聲音
k 鎖定壓縮文件
kb 保留損壞的已解壓文件
m<0..5> 設置壓縮級別(0-存儲...3-默認...5-最大)
mc<參數> 設置高級壓縮參數
md<大小> 以KB為單位的字典大小(64,128,256,512,1024,2048,4096 or A-G)
ms[ext;ext] 指定存儲的文件類型
mt<線程> 設置線程數
n<文件> 僅包含指定的文件
n@ 從標准輸入設備讀取文件名到包括
n@<列表> 在指定的文件列表包括文件
o[+|-] 設置覆蓋模式
oc 設置 NTFS 壓縮屬性
or 自動重命名文件
os 保存 NTFS 流
ow 保存或恢復文件所有者和組
p[密碼] 設置密碼
p- 不詢問密碼
r 遞歸子目錄
r0 僅遞歸通配符名稱的子目錄
ri<P>[:<S>] 設置優先順序(0-默認,1-最小..15-最大)和以毫秒為單位的休眠時間
rr[N] 添加數據恢復記錄
rv[N] 創建恢復卷
s[<N>,v[-],e] 創建固實壓縮文件
s- 禁用固實壓縮文件
sc<chr>[obj] 指定字元集
sfx[名稱] 創建自解壓壓縮文件
st[名稱] 從標准輸入設備讀取數據(stdin)
sl<大小> 處理小於指定大小的文件
sm<大小> 處理超過指定大小的文件
t 壓縮後測試文件
ta<日期> 添加日期 <日期> 後修改的文件,日期格式 YYYYMMDDHHMMSS
tb<日期> 添加日期 <日期> 前修改的文件,日期格式 YYYYMMDDHHMMSS
tk 保留原始壓縮文件時間
tl 設置壓縮文件時間為最新文件時間
tn<時間> 添加 <時間> 以後的文件
to<時間> 添加 <時間> 以前的文件
ts<m,c,a>[N] 保存或恢復文件時間(修改,創建,訪問)
u 更新文件
v 自動檢測創建卷的大小或者列出所有的卷
v<大小>[k,b] 創建卷大小=<大小>*1000 [*1024, *1]
vd 創建容量前清除磁碟內容
ver[n] 文件版本控制
vn 使用舊風格的卷命名方案
vp 每卷之前暫停
w<路徑> 指定工作目錄
x<文件> 排除指定的文件
x@ 從標准輸入設備讀取要排除的文件名
x@<列表> 排除指定列表文件中的文件
y 假設對全部詢問都回答是
z[文件] 從文件讀取壓縮文件注釋

❸ vb自身壓縮文件夾或使文件夾變成文件

以二進制的方式一個個的打開,寫入一個新的文件,依次寫入文件尾端,最後寫入依次寫入文件的位置(文件的長度)

還可以用UNRAR.exe命令方式壓縮和解壓
將unrar.exe加入資源文件,先釋放unrar.exe到臨時目錄,再用命令解壓目標文件

❹ vb怎麼壓縮/解壓數據

winrar有預定義的指令的,比如下面的vb代碼把文件壓縮: mystr = "C:\Program Files\WinRAR\WinRAR.exe"
Source = "d:\1.txt" '源文件的位置
Target = "d:\" '存放壓縮文件的位置
mystr = mystr & " a " & Target & " " & Source
'調用RAR文件壓縮
retval = Shell(mystr, vbHide)
MsgBox "文件壓縮成功完成!", 64, "提示信息"解壓文件也類似,可以去找下winrar的一些說明,它自己有命令行的,調用就行,解壓好像是-inul,不太記得了。上面的代碼可以進行壓縮。

❺ vb如何調用winrar壓縮整個文件夾中的內容,包括裡面的子文件夾

Private Sub Command1_Click()
Shell "C:\Program Files\WinRAR\WinRAR.exe a -r e:\test.rar e:\test"
End Sub

❻ VB中 如何用winrar 壓縮一個文件夾

如果是本地文件,可以這樣:一些資料庫文件(如Access文件)在遠程傳輸過程中可能由於文件比較大而影響傳遞效果。如果進行壓縮以後再傳遞,會減少傳遞時間,避免意外的發生,同時也保證了傳遞效果。我們在壓縮文件時,最常用的壓縮工具為WinRar和Winzip,筆者在VB編程過程中利用WinRar工具來壓縮資料庫文件,並完成遠程傳輸,十分方便,在此向大家介紹一下。用WinZip的方法類似。

一、Shell函數

Shell函數是VB中的內部函數,它負責執行一個可執行文件,返回一個Variant(Double),如果成功的話,代表這個程序的進程ID,若不成功,則會返回0。

Shell的語法:Shell(PathName[,WindowStyle])。

PathName 為必需參數。類型為String,它指出了要執行的程序名,以及任何需要的參數或命令行變數,也可以包括路徑名。

WindowStyle為可選參數。Integer類型,指定在程序運行時窗口的樣式。WindowStyle有以下這些值。

常量值描述

VbHide 0 窗口被隱藏,且焦點會移到隱式窗口。

VbNormalFocus 1 窗口具有焦點,且會還原到它原來的大小和位置。

VbMinimizedFocus 2 窗口會以一個具有焦點的圖標來顯示(預設值)。

VbMaximizedFocus 3 窗口是一個具有焦點的最大化窗口。

VbNormalNoFocus 4 窗口會被還原到最近使用的大小和位置,而當前活動的窗口仍然保持活動。

VbMinimizedNoFocus 6 窗口會以一個圖標來顯示,而當前活動的窗口仍然保持活動。

二、關於WinRar的用法

主要介紹以下如何在WinRar中用命令行來壓縮和解壓縮文件。

壓縮:WINRAR A [-switches] [Files] [@File lists]

例如你想把try.mdb壓縮到C盤下,可以WINRAR A C:\try.rar C:\try.mdb

解壓縮:如果帶目錄解壓縮

WINRAR X [-switches] [Files] [@File lists] [destionation folder\]

如果在當前目錄解壓縮,即解壓縮時不寫目錄名

WINRAR E [-switches] [Files] [@File lists] [destionation folder\]

例如你想把try.rar解壓縮到C盤下,可以WINRAR X C:\try.rar C:\try.mdb

三、一個例子

在VB中新建一個工程,在Form1中添加兩個按鈕Command1、Command2和Command3,把他們的Caption屬性分別設為"壓縮文件"、"解壓縮文件"和"傳遞文件"。按Command1時把文件try.mdb壓縮成try.rar。

Private Sub Command1_Click()

Dim Rarexe As String 'WINRAR執行文件的位置

Dim Source As String ' 壓縮前的原始文件

Dim Target As String ' 壓縮後的目標文件

Dim FileString as String 'Shell指令中的字元串

Dim Result As Long

Rarexe="C:\program files\winrar\winrar"

Source="C:\try.mdb"

Target="C:\try.rar"

FileString = rarexe & " a " & Target & " " & Source

Result = Shell(FileString, vbHide)

End Sub

解壓的過程類似,按Command2可以把try.rar解壓生成 try.mdb。在執行了上面的壓縮過程後,可以刪除文件try.mdb,來解壓縮重新生成try.mdb。

Private Sub Command2_Click()

Dim Rarexe As String 'WINRAR執行文件的位置

Dim Source As String ' 解壓縮前的原始文件

Dim Target As String ' 解壓縮後的目標文件

Dim FileString as String 'Shell指令中的字元串

Dim Result As Long

Rarexe="C:\program files\winrar\winrar"

Source="C:\try.rar"

Target="C:\try.mdb"

FileString = rarexe & " X " & Source & " " & Target

Result = Shell(FileString, vbHide)

End Sub

文件從一台計算機傳輸到另一台計算機前,應知道另一台計算機的名字,然後用FileCopy語句就可以了。假設要把壓縮後try.rar傳遞到計算機名為"other"的共享目錄"want"下。

Private Sub Command3_Click()

Dim SourceFile, DestinationFile

SourceFile ="C:\try.rar " ' 指定源文件名。

DestinationFile = "\\other\want\try.rar" ' 指定目的文件名。

FileCopy SourceFile, DestinationFile ' 將源文件的內容復制到目的文件中。

End Sub

怎麼樣,十分簡單吧?

閱讀全文

與壓縮文件夾vb相關的資料

熱點內容
linuxftp自動登錄 瀏覽:802
運行編譯後網頁 瀏覽:70
閱讀app怎麼使用 瀏覽:319
centos防火牆命令 瀏覽:432
命令行變更 瀏覽:332
linux設備和驅動 瀏覽:207
加密貨幣騙局破案 瀏覽:345
cc特徵碼加密 瀏覽:775
清空dns緩存命令 瀏覽:295
文件夾單擊右鍵一直轉圈 瀏覽:820
天天玩樂園是哪個app 瀏覽:395
單片機數碼管動態顯示效果圖 瀏覽:874
備用dns伺服器地址可以調嗎 瀏覽:267
ad劍魔和app哪個好 瀏覽:865
java的undefined 瀏覽:813
列表的合並與排序python代碼 瀏覽:324
編譯原理英文版pdf下載 瀏覽:951
c單片機pdf 瀏覽:827
adb下載命令 瀏覽:126
安卓怎麼打開pdf 瀏覽:108