人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

如何備份(恢復(fù))存儲路徑含有空格的壓縮文件

如何備份(恢復(fù))存儲路徑含有空格的壓縮文件

更新時間:2022-10-08 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

作者:李偉春、金梅
(公安海警高等專科學(xué)校計算機(jī)教研室  寧波市第六醫(yī)院內(nèi)科)

摘 要:通過該方法的應(yīng)用,可以把數(shù)據(jù)庫及有關(guān)文件壓縮到含有空格的文件夾中,并且解決了由于Windows的并行性處理而引發(fā)的一系列問題。關(guān)鍵字:Winrar  路徑  空格
    Winrar是目前比較流行的高壓縮率的壓縮軟件,有關(guān)它的使用報道文章也比較多,但他們都沒能解決如‘壓縮文件的路徑名含有空格’的等難題。本人在開發(fā)《軍械管理系統(tǒng)》課題期間,因為前臺是Visual Basic、后臺采用的是Access數(shù)據(jù)庫,要求把數(shù)據(jù)庫隨時備份到硬盤的‘c:\Program Files’文件夾下,這樣用通常的辦法就不能進(jìn)行恢復(fù)。經(jīng)過分析,已經(jīng)研究出解決的辦法,下面作一介紹,以便同行借鑒。

1. 解決空格的問題


在上面的表單中,如果按所選擇的路徑進(jìn)行備份操作,將出現(xiàn)找不到文件的錯誤信息。解決方法是必須在未壓縮之前用MkDir在硬盤的根目錄中建立一個臨時的文件夾,把要操作的數(shù)據(jù)庫用FileCopy函數(shù)拷貝到臨時的文件夾中,在這里進(jìn)行文件的壓縮工作,之后再拷貝到"c:\Program Files"的文件夾中,具體程序如下:
1.1 備份操作
tdir = "c:\temppath" '臨時路徑名
MkDir (tdir) '創(chuàng)建臨時路徑
FileCopy App.Path & "\jxgl.mdb", tdir & "\jxgl.mdb" '把文件從默認(rèn)路徑中拷到所創(chuàng)建的臨時文件夾里
Rarexe = App.Path & "\winrar.exe"
src = tdir & "\jxgl.mdb"
des = tdir & "\jxgl.rar"
FileString = Rarexe & " a -ep " & des & " " & src
Result = Shell(FileString, vbHide) '在臨時的文件夾中完成壓縮的任務(wù)
If Err.Number <> 0 Then
MsgBox "無法壓縮數(shù)據(jù)庫:" & Err.Description, vbCritical
Exit Sub
FileCopy tdir & "\jxgl.rar", "c:\Program Files\jxgl.rar" '從臨時文件夾中再拷到所填寫的"c:\Program Files"里
1.2 恢復(fù)操作
tdir = "c:\temppath" '臨時路徑名
MkDir (tdir) '創(chuàng)建臨時路徑
FileCopy "c:\Program Files\jxgl.rar", tdir & "\jxgl.rar" '從"c:\Program Files"中把要恢復(fù)的壓縮文件拷貝到臨時文件夾中

Rarexe = App.Path & "\winrar.exe"
des = tdir
src = tdir & "\jxgl.rar"
FileString = Rarexe & " x -ep " & src & " " & "jxgl.mdb" & " " & des
Result = Shell(FileString, vbHide) '在臨時的文件夾中完成解包的任務(wù)
If Err.Number <> 0 Then
MsgBox "無法解開數(shù)據(jù)庫:" & Err.Description, vbCritical
Exit Sub
FileCopy tdir & "\jxgl.mdb", "c:\Program Files\mdb.rar" '從臨時文件夾中再拷到所填寫的"c:\Program Files"里

2. 解決數(shù)據(jù)庫恢復(fù)出錯的問題
Windows操作系統(tǒng)的一大特點就是進(jìn)程的并行性,也就是在前一個任務(wù)未執(zhí)行完之前,下一個任務(wù)已經(jīng)開始執(zhí)行,這有益于提高計算機(jī)的執(zhí)行速度,但也存在著隱患。我們在數(shù)據(jù)庫恢復(fù)時就遇到了此類問題。
例如:Winrar x a:\jxgl.rar jxgl.mdb c:\jxgl
FileCopy "c:\jxgl\jxgl.mdb", "c:\Program Files\jxgl.mdb"
上面這兩條命令行在PII/766計算機(jī)上執(zhí)行沒有任何問題,但在C/366計算機(jī)上執(zhí)行就出現(xiàn)了找不到"c:\jxgl\jxgl.mdb"的錯誤,經(jīng)過大家的仔細(xì)分析,問題出在"進(jìn)程的并行性"上。為了保障第二條命令的正常進(jìn)行,必須使第一條命令執(zhí)行完,由此我們通過增加預(yù)留時間解決了該問題,方法如下:
Winrar x a:\jxgl.rar jxgl.mdb c:\jxgl
tt = Timer '取得機(jī)器的當(dāng)前時間
Do While tt > Timer - 0.5 '延遲0.5秒
Loop
FileCopy "c:\jxgl\jxgl.mdb", "c:\Program Files\jxgl.mdb"
3.結(jié)束語
以上兩種問題的解決辦法未曾見到有關(guān)的報道,希望本文能對同行在軟件設(shè)計時,在數(shù)據(jù)庫的壓縮過程中有所幫助。
參考文獻(xiàn):
謝東主編.Visual Basic 開發(fā)多媒體應(yīng)用程序.北京:清華大學(xué)出版社

作者姓名:李偉春
職 稱:高級工程師
工作單位:公安海警高等專科學(xué)校計算機(jī)教研室
通信地址:浙江省寧波市北侖區(qū)公安海警高等專科學(xué)校計算機(jī)教研室
郵政編碼:315801

作者姓名:金梅
職 稱:主治醫(yī)師
工作單位:寧波市第六人民醫(yī)院內(nèi)科
通信地址:浙江省寧波市第六人民醫(yī)院內(nèi)科
郵政編碼:315040

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 龙里县| 漾濞| 彰化市| 新安县| 资溪县| 且末县| 昆山市| 博爱县| 远安县| 凤山县| 清新县| 尚志市| 兴城市| 阳城县| 察隅县| 嘉鱼县| 包头市| 施甸县| 百色市| 顺义区| 南充市| 沈阳市| 香格里拉县| 罗甸县| 游戏| 蚌埠市| 安泽县| 商城县| 化隆| 建阳市| 仙桃市| 广德县| 佛山市| 广宗县| 安国市| 年辖:市辖区| 万源市| 永州市| 宁南县| 四川省| 锡林浩特市|