欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于云壓縮文件的壓縮和解壓縮方法、裝置及系統(tǒng)的制作方法

文檔序號:7704770閱讀:232來源:國知局
專利名稱:一種基于云壓縮文件的壓縮和解壓縮方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及壓縮和解壓縮技術(shù),特別是涉及一種基于云壓縮文件的壓縮方法、一種基于云壓縮文件的解壓縮方法、一種基于云壓縮文件的壓縮裝置、一種基于云壓縮文件的解壓縮裝置及一種基于云壓縮文件的系統(tǒng)。
背景技術(shù)
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)寬帶的速度越來越快,人們利用網(wǎng)絡(luò)交換、分享文件的行為越來越多,如使用電子郵箱、即時通訊工具等方式。但是,在很多情況下人們分享文件仍然有很多不方便的地方,制約了文件在互聯(lián)網(wǎng)上的交換和分享。例如把一個25M大小的文件發(fā)到一個論壇里供大家下載,但是論壇只支持5M大小的附件;把一個35M大小的文件發(fā)郵件給別人,但是郵件的附件最大只支持15M ;把一個20M大小的文件發(fā)給msn上的好友,但是雙方網(wǎng)絡(luò)不通暢,速度只有幾k,傳輸極慢;等等。壓縮軟件的出現(xiàn)在一定程度上緩解了上述問題。用傳統(tǒng)的壓縮軟件可以把一個文件(由于一個文件和多個文件與文件夾的集合類似,本文均以一個文件代表所有形式的文件與文件夾的不同集合)壓縮到原來體積的百分之幾十到100%,壓縮后的文件體積縮小很多,節(jié)省了帶寬,方便了分享。但是,普通的文件壓縮率常在50%到100%之間。即使以50%的超低壓縮率,上面所列的幾種情況在使用壓縮軟件壓縮后,仍然不能被解決,因為以超低壓縮率壓縮后的文件體積仍大于論壇或郵箱允許的附件大小。因此,現(xiàn)有的文件壓縮由于壓縮率不夠低,仍然限制了文件在互聯(lián)網(wǎng)上的交換和分享。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種基于云壓縮文件的壓縮和解壓縮方法、裝置及系統(tǒng),以解決現(xiàn)有技術(shù)中文件壓縮率不夠低,限制文件在互聯(lián)網(wǎng)上交換和分享的問題。為了解決上述問題,本發(fā)明公開了一種基于云壓縮文件的壓縮方法,包括觸發(fā)云壓縮請求;客戶端依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;服務(wù)器依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;服務(wù)器對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。
其中,所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。其中,所述要壓縮的本地文件數(shù)據(jù)為單個文件,或者為多個文件,或者為單個文件夾,或者為多個文件夾。優(yōu)選的,如果所述云壓縮請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;如果所述云壓縮請求為先生成云壓縮文件,則所述服務(wù)器在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時接收客戶端上傳的云壓縮數(shù)據(jù)。優(yōu)選的,如果所述云壓縮請求為先生成云壓縮文件,則還包括在客戶端未上傳完畢的時候,另一客戶端通過點擊云壓縮文件從所述服務(wù)器下載已經(jīng)上傳的部分云壓縮數(shù)據(jù)。優(yōu)選的,所述觸發(fā)云壓縮請求之后,還包括客戶端將要壓縮的本地文件的基本文件信息上傳給服務(wù)器;服務(wù)器根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;客戶端依據(jù)所述查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲;如果服務(wù)器已存儲客戶端要壓縮的所有文件,則服務(wù)器直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。優(yōu)選的,客戶端將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲;若客戶端上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,則所述方法還包括客戶端重新開始上傳數(shù)據(jù),如果服務(wù)器上存在相同的數(shù)據(jù)塊,則客戶端不再上傳所述相同的數(shù)據(jù)塊;或者,客戶端在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。優(yōu)選的,所述觸發(fā)云壓縮請求之后,還包括客戶端在壓縮前添加密碼和/或注釋信息;或者,服務(wù)器存儲云壓縮數(shù)據(jù)時添加密碼和/或注釋信息。優(yōu)選的,所述觸發(fā)云壓縮請求之后,還包括客戶端智能判斷壓縮率并自動調(diào)整壓縮級別進(jìn)行壓縮。本發(fā)明還提供了一種基于云壓縮文件的解壓縮方法,包括通過打開云壓縮文件觸發(fā)云解壓請求,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;客戶端從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);客戶端根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù);客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)。優(yōu)選的,所述客戶端從所述云壓縮文件中獲取基本文件信息后,還包括客戶端根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù);客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)。其中,所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。優(yōu)選的,所述客戶端下載全部或部分云壓縮數(shù)據(jù)。
本發(fā)明還提供了一種基于云壓縮文件的壓縮裝置,包括客戶端裝置和服務(wù)器裝置,其中,所述客戶端裝置包括云壓縮觸發(fā)單元,用于觸發(fā)云壓縮請求;云壓縮單元,用于依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮, 并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;云壓縮文件接收單元,用于從服務(wù)器接收對應(yīng)的云壓縮文件,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;所述服務(wù)器裝置包括云壓縮數(shù)據(jù)存儲單元,用于存儲客戶端上傳的云壓縮數(shù)據(jù);云壓縮文件生成單元,用于依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端;映射單元,用于對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。其中,所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。其中,所述要壓縮的本地文件數(shù)據(jù)為單個文件,或者為多個文件,或者為單個文件夾,或者為多個文件夾。優(yōu)選的,如果所述云壓縮請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器裝置中的云壓縮文件生成單元在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;如果所述云壓縮請求為先生成云壓縮文件,則所述服務(wù)器裝置中的云壓縮文件生成單元在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時所述服務(wù)器裝置中的云壓縮數(shù)據(jù)存儲單元接收客戶端上傳的云壓縮數(shù)據(jù)并存儲。優(yōu)選的,所述客戶端裝置還包括基本文件信息上傳單元,用于將要壓縮的本地文件的基本文件信息上傳給服務(wù)器;所述云壓縮單元還用于依據(jù)服務(wù)器的查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲;所述服務(wù)器裝置還包括查詢單元,用于根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;如果服務(wù)器已存儲客戶端要壓縮的所有文件,則直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。優(yōu)選的,所述客戶端裝置的云壓縮單元將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲;所述客戶端裝置還包括斷點續(xù)傳單元,用于當(dāng)所述云壓縮單元上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,并重新開始上傳數(shù)據(jù)時,如果服務(wù)器上存在相同的數(shù)據(jù)塊,則不再上傳所述相同的數(shù)據(jù)塊;或者,在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。優(yōu)選的,所述客戶端裝置還包括加密單元,用于在云壓縮單元進(jìn)行壓縮前添加密碼;和/或,注釋單元,用于在云壓縮單元進(jìn)行壓縮前添加注釋信息。
優(yōu)選的,所述服務(wù)器裝置還包括加密單元,用于存儲云壓縮數(shù)據(jù)時添加密碼;和/或,注釋單元,用于存儲云壓縮數(shù)據(jù)時添加注釋信息。優(yōu)選的,所述客戶端裝置還包括壓縮級別調(diào)整單元,用于智能判斷壓縮率并自動調(diào)整壓縮級別;所述云壓縮單元以壓縮級別調(diào)整單元調(diào)整的壓縮級別進(jìn)行壓縮。本發(fā)明還提供了一種基于云壓縮文件的解壓縮裝置,包括客戶端裝置和服務(wù)器裝置,其中,所述客戶端裝置包括云解壓觸發(fā)單元,用于通過打開云壓縮文件觸發(fā)云解壓請求,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;基本文件信息獲取單元,用于從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);下載單元,用于根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù);解壓縮單元,用于依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓, 得到原始文件數(shù)據(jù);所述服務(wù)器裝置包括云壓縮數(shù)據(jù)查詢單元,用于根據(jù)客戶端上傳的基本文件信息查找對應(yīng)的云壓縮數(shù)據(jù),并返回給客戶端。優(yōu)選的,所述客戶端裝置的下載單元還用于根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù)。本發(fā)明還提供了一種基于云壓縮文件的系統(tǒng),包括上述的基于云壓縮文件的壓縮裝置,和,上述的基于云壓縮文件的解壓縮裝置。與現(xiàn)有技術(shù)相比,本發(fā)明包括以下優(yōu)點首先,本發(fā)明提出一種新式的壓縮方法,可以將本地文件自動壓縮并上傳到網(wǎng)絡(luò)服務(wù)器上存儲,服務(wù)器對應(yīng)云壓縮數(shù)據(jù)生成云壓縮文件再發(fā)送給客戶端,客戶端用戶可以把云壓縮文件發(fā)給其他的客戶端用戶。用戶通過點擊所述云壓縮文件,就可以直接從網(wǎng)絡(luò)上下載對應(yīng)的云壓縮數(shù)據(jù)并進(jìn)行解壓。所述的新型壓縮方法可將任意大小的文件轉(zhuǎn)化為云壓縮文件,而且壓縮率降低到以下,幾乎不占空間。即任意大小的文件數(shù)據(jù),無論是IOM 還是50M,還是200M,無論是文件還是文件夾,都可以壓縮到IK以內(nèi)的大小。相對于傳統(tǒng)的 50% -100%的壓縮率,所述的新型壓縮方法實現(xiàn)的以下的超低壓縮率是革命性的。因此,如此小體積的云壓縮文件可以非常方便地通過郵件、論壇或即時通訊工具發(fā)送給他人, 不占用空間,節(jié)省傳輸帶寬,易于分享。其次,本發(fā)明與網(wǎng)盤上傳文件的方式相比,無需用戶手動壓縮文件,然后再手動將壓縮文件上傳至網(wǎng)絡(luò),而是將壓縮和上傳結(jié)合在一起一步到位,節(jié)省了操作和壓縮上傳時間,非常方便。再次,本發(fā)明也無需用戶經(jīng)過打開瀏覽器、輸入網(wǎng)址、登錄、上傳等復(fù)雜的網(wǎng)盤操作步驟,而是在客戶端安裝云壓縮軟件,通過直接點擊右鍵菜單或者打開客戶端的云壓縮軟件等方式直接觸發(fā)云壓縮,因此本發(fā)明操作起來更加方便直接。
最后,本發(fā)明還具有智能選取壓縮級別、支持?jǐn)帱c續(xù)傳、可添加密碼和注釋信息等等優(yōu)點,這些優(yōu)點將在具體實施方式
中詳細(xì)說明。


圖1是本發(fā)明實施例所述一種基于云壓縮文件的壓縮方法流程圖;圖2是本發(fā)明實施例所述一種基于云壓縮文件的解壓縮方法流程圖;圖3是本發(fā)明實施例所述一種基于云壓縮文件的壓縮裝置結(jié)構(gòu)圖;圖4是本發(fā)明實施例所述一種基于云壓縮文件的解壓縮裝置結(jié)構(gòu)圖;圖5. 1至5. 8是本發(fā)明實施例中用系統(tǒng)右鍵菜單生成云壓縮文件的過程示意圖;圖6. 1和6. 2是本發(fā)明實施例中用系統(tǒng)右鍵菜單一鍵生成云壓縮文件的過程示意圖;圖7. 1和7. 2是本發(fā)明實施例中用云壓縮軟件主窗口生成云壓縮文件的過程示意圖;圖8. 1至8. 3是本發(fā)明實施例中用戶打開一個云壓縮文件的過程示意圖;圖9. 1至9. 4是本發(fā)明實施例中系統(tǒng)右鍵菜單解壓一個云壓縮文件的過程示意圖;圖10. 1至10. 3是本發(fā)明實施例中云壓縮軟件主窗口解壓一個云壓縮文件的過程示意圖11是本發(fā)明實施例中要進(jìn)行云壓縮的文件示意圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。傳統(tǒng)的文件壓縮率多年來沒有太大進(jìn)步,普通文件的壓縮率達(dá)到50%或者40% 已經(jīng)非常難得,達(dá)到20% -30%的很少,極少數(shù)文件壓縮才能達(dá)到10%或者百分之幾的壓縮率。本發(fā)明提出一種新式的壓縮方法,可以將本地文件自動壓縮并上傳到網(wǎng)絡(luò)服務(wù)器上存儲,服務(wù)器對應(yīng)云壓縮數(shù)據(jù)生成云壓縮文件再發(fā)送給客戶端,客戶端用戶可以把云壓縮文件發(fā)給其他的客戶端用戶。用戶通過點擊所述云壓縮文件,就可以直接從網(wǎng)絡(luò)上下載對應(yīng)的云壓縮數(shù)據(jù)并進(jìn)行解壓。以下均把這種采用將數(shù)據(jù)流上傳到服務(wù)器并生成云壓縮文件的新型壓縮方式稱為云壓縮,將通過云壓縮由服務(wù)器生成的壓縮文件稱為云壓縮文件下面通過實施例對這種新型壓縮方式進(jìn)行詳細(xì)說明。參照圖1,是本發(fā)明實施例所述一種基于云壓縮文件的壓縮方法流程圖。步驟11,觸發(fā)云壓縮請求;一般通過用戶操作觸發(fā)云壓縮請求,用戶在客戶端選擇要進(jìn)行云壓縮的本地文件數(shù)據(jù),然后通過一定的操作觸發(fā)對該文件數(shù)據(jù)進(jìn)行云壓縮。其中,所述“一定的操作”可以是點擊右鍵菜單,選擇“添加到云壓縮文件”選項進(jìn)行觸發(fā);也可以是打開客戶端安裝的云壓縮軟件主窗口,選擇文件并點擊“云壓縮”選項進(jìn)行觸發(fā);或者,也可以是其他的操作觸發(fā)方式,可根據(jù)實際應(yīng)用進(jìn)行具體實現(xiàn)。
用戶在客戶端觸發(fā)云壓縮請求后,客戶端和服務(wù)器分別進(jìn)行步驟121和步驟122 的處理步驟121,客戶端依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;即客戶端將壓縮和上傳結(jié)合在一起自動完成;其中,所述要壓縮的本地文件數(shù)據(jù)可以為單個文件,也可以為多個文件,還可以為單個文件夾或多個文件夾。即可以將單個文件或多個文件、單個文件夾或多個文件夾自動壓縮為一個壓縮后文件,并在服務(wù)器上進(jìn)行存儲。該壓縮后文件中可能包含多個文件或文件夾的壓縮包。上述的云壓縮數(shù)據(jù)可以指所述的壓縮后文件。但是,需要說明的是,所述壓縮后文件是將本地文件數(shù)據(jù)進(jìn)行壓縮并上傳到服務(wù)器存儲的壓縮包數(shù)據(jù),并不是步驟122 中服務(wù)器生成的云壓縮文件,該云壓縮文件是依據(jù)基本文件信息而生成,并不包含實際的文件數(shù)據(jù)。進(jìn)一步的,要壓縮的本地文件數(shù)據(jù)可以是壓縮前的文件或文件夾,還可以是在本地已經(jīng)進(jìn)行過壓縮的文件。步驟122,服務(wù)器依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;服務(wù)器會對應(yīng)每個云壓縮數(shù)據(jù)生成唯一的云壓縮文件,并把這個云壓縮文件發(fā)給請求的客戶端。本實施例中,所述云壓縮文件是一個很小的文件,這個云壓縮文件可以包含文件標(biāo)識信息和文件目錄結(jié)構(gòu),其中文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息, 所述文件標(biāo)識信息可以是唯一云壓縮文件序列號。此外,所述云壓縮文件中還可以包含文件名、文件大小、網(wǎng)絡(luò)服務(wù)器地址(用于客戶端找到對應(yīng)的服務(wù)器)等信息,這些信息由客戶端上傳給服務(wù)器。但是所述云壓縮文件中并不包含實際的文件數(shù)據(jù),因此,所述云壓縮文件和原始文件或壓縮后的數(shù)據(jù)相比非常小,多數(shù)將不到Ik大小。其中,唯一云壓縮文件序列號可采用哈希(Hash)算法或MD5等算法生成,如果是哈希算法則可以直接用Hash值表示。所述唯一云壓縮文件序列號對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,即對應(yīng)著服務(wù)器上數(shù)據(jù)庫中的壓縮后文件的基本文件信息。所述基本文件信息包括文件的序列號(通常以Hash值為序列號)、文件的名稱、文件夾的目錄結(jié)構(gòu)、 文件的大小等信息。進(jìn)一步的,服務(wù)器生成的云壓縮文件還可以僅包含一個唯一的云壓縮文件序列號,而不含文件名,例如內(nèi)容cloudzip = 75b9c0f7,這種云壓縮文件稱為極小云壓縮文件,其體積將小到驚人的十幾字節(jié)。而客戶端上傳的其他基本文件信息可以保存到服務(wù)器上。根據(jù)實際應(yīng)用的不同,上述步驟121和122可以同時進(jìn)行,也可以先后進(jìn)行,這將在后面的內(nèi)容中進(jìn)行詳細(xì)說明。服務(wù)器生成云壓縮文件后,服務(wù)器還繼續(xù)執(zhí)行步驟13。步驟13,服務(wù)器對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。即在服務(wù)器上建立壓縮后的文件數(shù)據(jù)與云壓縮文件的對應(yīng)關(guān)系。經(jīng)過上述步驟的處理,可以把一個文件數(shù)據(jù)壓縮成為一個很小的云壓縮文件,并
11可以把該云壓縮文件發(fā)送給其他的客戶端用戶??蛻舳擞脩酎c擊該云壓縮文件,就可以直接從網(wǎng)絡(luò)上下載對應(yīng)的云壓縮數(shù)據(jù)并進(jìn)行解壓,從而利用互聯(lián)網(wǎng)實現(xiàn)了文件分享。所述的新型壓縮方法可將任意大小的文件轉(zhuǎn)化為云壓縮文件,而且壓縮率降低到以下,幾乎不占空間。即任意大小的文件數(shù)據(jù),無論是IOM還是50M、100M.500M,還是1G,無論是文件還是文件夾,只要服務(wù)器空間足夠大,帶寬足夠高,都可以壓縮到IK以內(nèi)的大小。相對于傳統(tǒng)的 50% -100%的壓縮率,所述的新型壓縮方法實現(xiàn)的以下的超低壓縮率是革命性的。因此,如此小體積的云壓縮文件可以非常方便地通過郵件、論壇或即時通訊工具發(fā)送給他人, 不占用空間,節(jié)省傳輸帶寬,易于分享。此外,將上述實施例所述方法與網(wǎng)盤上傳文件的方式相比,還具有以下區(qū)別及優(yōu)占.
^ \\\ ·第一,網(wǎng)盤上傳文件的方式在多數(shù)情況下為了節(jié)省傳輸時間,需要用戶先手動使用傳統(tǒng)的壓縮軟件對本地文件進(jìn)行壓縮,生成一個壓縮包,然后再手動使用網(wǎng)盤上傳壓縮包。而本發(fā)明實施例將壓縮和上傳結(jié)合在一起一步到位,用戶點擊云壓縮后就可以獲得一個云壓縮文件,無需手動壓縮文件然后再手動上傳等操作,節(jié)省了操作和壓縮上傳時間,非常方便。第二,網(wǎng)盤上傳文件的方式需要用戶注冊,用戶需經(jīng)過打開瀏覽器、輸入網(wǎng)址、登錄、上傳等復(fù)雜的網(wǎng)盤操作步驟。而本發(fā)明實施例所述方法是在客戶端安裝云壓縮軟件,通過直接點擊右鍵菜單或者打開客戶端的云壓縮軟件等方式直接觸發(fā)云壓縮,因此本發(fā)明操作起來更加方便直接?;趫D1所示實施例的內(nèi)容,本發(fā)明還可實現(xiàn)更多的功能,并具有更多的優(yōu)點,下面分別說明。1、步驟121和122可以同時執(zhí)行,也可以先后執(zhí)行;如果所述請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;即步驟121先執(zhí)行,待步驟121執(zhí)行完畢之后,步驟122再開始執(zhí)行;如果所述請求為先生成云壓縮文件,則所述服務(wù)器在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時接收客戶端上傳的云壓縮數(shù)據(jù);即步驟121和122可以同時執(zhí)行,也可以先執(zhí)行步驟122再執(zhí)行步驟121。對于上述第二種情況,在未將云壓縮過程中的數(shù)據(jù)流上傳到服務(wù)器上時,可以先生成云壓縮文件,然后再繼續(xù)上傳數(shù)據(jù)流,否則對于一些較大文件,可能要等待十幾分鐘才能得到云壓縮文件。例如把客戶端的云壓縮軟件最小化到托盤在后臺慢慢傳輸,用戶不用等待就可以先把云壓縮文件發(fā)郵件給其他人,其他人看到該郵件時,數(shù)據(jù)流已經(jīng)傳輸完畢, 可以正常解壓。例如,生成云壓縮文件時如果100M的文件壓縮到50M大小,50M大小的數(shù)據(jù)在 IMadsl寬帶下需要傳輸8分鐘左右。在先生成云壓縮文件后傳輸數(shù)據(jù)(或同時傳輸數(shù)據(jù)) 的情況下,只需要十幾秒就可以生成云壓縮文件,然后用戶A可以立即把云壓縮文件用郵件發(fā)給別人,同時云壓縮在后臺再用8分鐘傳輸數(shù)據(jù),而用戶B在幾小時后查看郵件時數(shù)據(jù)已經(jīng)傳輸完畢可以解壓。這樣云壓縮的用戶A節(jié)約了 8分鐘時間。2、邊壓縮上傳邊解壓;
如果所述請求為先生成云壓縮文件,則還可以包括在客戶端未上傳完畢的時候,另一客戶端通過點擊云壓縮文件從所述服務(wù)器下載已經(jīng)上傳的部分云壓縮數(shù)據(jù)。在先生成云壓縮文件,然后再繼續(xù)上傳數(shù)據(jù)流的方式中,可以在未上傳完畢時,解壓云壓縮文件的人可以下載上傳了部分的數(shù)據(jù)流進(jìn)行解壓操作。這樣能夠讓制作云壓縮文件的人和解壓云壓縮文件的人在最短的時間內(nèi)實現(xiàn)壓縮和解壓。例如,在邊上傳云壓縮數(shù)據(jù)流邊下載數(shù)據(jù)流進(jìn)行解壓的情況下,用戶A在把100M 的文件花十幾秒云壓縮后,立即把云壓縮文件用郵件附件發(fā)給用戶B,此時云壓縮邊上傳數(shù)據(jù)流,用戶B可以立即對已經(jīng)上傳的部分?jǐn)?shù)據(jù)流進(jìn)行下載解壓,雙方都不需要等待。3、服務(wù)器避免重復(fù)存儲的問題;當(dāng)使用云壓縮的人特別多之后,服務(wù)器上的已存儲文件(即指云壓縮數(shù)據(jù))會有很多重復(fù)的。為了避免這種問題,可以在服務(wù)器上對文件進(jìn)行Hash值計算,如果Hash值相同,那么兩個文件完全相同,則可以只在服務(wù)器上保存一個文件。在本地客戶端上,對文件進(jìn)行Hash值計算,通過與服務(wù)器上的Hash表進(jìn)行對比,如果有相同的值,即服務(wù)器上已經(jīng)有相同的文件,則不進(jìn)行傳輸該文件,進(jìn)而節(jié)省服務(wù)器空間和帶寬。而且,服務(wù)器在生成云壓縮文件時,如果有用戶已經(jīng)進(jìn)行過相同文件的云壓縮, 則服務(wù)器上已經(jīng)存在相同的文件,那么可以省去傳輸該文件,可以瞬間完成云壓縮,只需 1秒。例如一個用戶A云壓縮過100M的“忍者貓.rmvb”,則服務(wù)器上已經(jīng)存在了 “忍者貓.rmvb”文件,則用戶B云壓縮“忍者貓.rmvb”時,由于省去了該文件的傳輸過程,僅需1 秒即可得到云壓縮文件。上述內(nèi)容可以通過以下步驟實現(xiàn)在所述觸發(fā)云壓縮請求之后,還包括1)客戶端將要壓縮的本地文件的基本文件信息(包含Hash值)上傳給服務(wù)器;2)服務(wù)器根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;即通過Hash值的比較查詢是否存儲相同文件,查詢結(jié)果一般包括三種第一種是客戶端要壓縮的所有文件都已在服務(wù)器上存儲;第二種時客戶端要壓縮的所有文件都沒有在服務(wù)器上存儲;第三種是客戶端要壓縮的所有文件中,有部分文件在服務(wù)器上存儲,還有剩余部分的文件沒有在服務(wù)器上存儲。3)客戶端依據(jù)所述查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲;4)如果服務(wù)器已存儲客戶端要壓縮的所有文件,則服務(wù)器直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。4、斷點續(xù)傳;壓縮上傳過程可以支持?jǐn)帱c續(xù)傳,即斷開網(wǎng)絡(luò)后,重新連上時可以從斷點處繼續(xù)進(jìn)行云壓縮。由于文件很大時會有網(wǎng)絡(luò)斷開的情況,會造成云壓縮中斷,造成傳輸?shù)牟糠謹(jǐn)?shù)據(jù)流白傳輸而需要重新傳輸。針對這種問題,可以對大文件的數(shù)據(jù)進(jìn)行分塊處理,例如進(jìn)行分塊Hash值計算,如果服務(wù)器上存在相同的數(shù)據(jù)塊Hash值,則該部分將不用再傳輸,從而實現(xiàn)斷點續(xù)傳,即以斷點續(xù)傳來實現(xiàn)斷點續(xù)壓。此外,也可以直接在斷點處做上數(shù)據(jù)標(biāo)記,實現(xiàn)斷點續(xù)傳的云壓縮。上述內(nèi)容可以通過以下步驟實現(xiàn)客戶端將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲;若客戶端上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,則所述方法還包括客戶端重新開始上傳數(shù)據(jù),如果服務(wù)器上存在相同的數(shù)據(jù)塊,則客戶端不再上傳所述相同的數(shù)據(jù)塊;或者,客戶端在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。5、添加密碼;云壓縮可以選擇加密,以實現(xiàn)對云壓縮文件的加密,進(jìn)行解壓云壓縮文件的人需要輸入密碼才可以打開,提高了私密性。選擇添加密碼既可以在本地壓縮時加密然后上傳, 也可以在服務(wù)器接收到上傳的數(shù)據(jù)后再加密。上述內(nèi)容可以通過以下步驟實現(xiàn)所述觸發(fā)云壓縮請求之后,還包括客戶端在壓縮前添加密碼;或者,服務(wù)器存儲云壓縮數(shù)據(jù)時添加密碼。6、添加注釋;在進(jìn)行云壓縮時可以選擇添加注釋,以實現(xiàn)對云壓縮文件的注釋,注釋可以包括 制作云壓縮文件的作者、相關(guān)說明等信息,方便下載者查看。這些注釋信息即可以在客戶端壓縮文件時存儲在云壓縮文件內(nèi),也可以由客戶端發(fā)送到服務(wù)器上并在服務(wù)器上存儲。上述內(nèi)容可以通過以下步驟實現(xiàn)所述觸發(fā)云壓縮請求之后,還包括客戶端在壓縮前添加注釋信息;或者,服務(wù)器存儲云壓縮數(shù)據(jù)時添加注釋信息。7、以不同的壓縮級別進(jìn)行壓縮;在進(jìn)行文件壓縮時,可以選用不同的壓縮級別進(jìn)行壓縮。并且,還可以智能判斷壓縮率而自動以不同的壓縮級別進(jìn)行壓縮,例如存儲、最快、標(biāo)準(zhǔn)等壓縮級別。例如對于一些壓縮率很低的文件,如rmvb、mp4、mp3等文件,可以直接以存儲壓縮方式上傳數(shù)據(jù)流,不耗費(fèi) CPU。上述內(nèi)容可以通過以下步驟實現(xiàn)所述觸發(fā)云壓縮請求之后,還包括客戶端智能判斷壓縮率并自動調(diào)整壓縮級別進(jìn)行壓縮。8、云壓縮確認(rèn)。由于用戶可能會誤操作,例如誤把“添加到云壓縮”文件命令執(zhí)行,從而誤將私密文件上傳到服務(wù)器而造成隱私泄露,因此在執(zhí)行云壓縮之前可以讓用戶確認(rèn)是否云壓縮該文件,以提高操作的準(zhǔn)確性。針對上述的云壓縮方法,本發(fā)明實施例還提供了相應(yīng)的解壓縮方法,如圖2所示。
參照圖2,是本發(fā)明實施例所述一種基于云壓縮文件的解壓縮方法流程圖。步驟201,通過打開云壓縮文件觸發(fā)云解壓請求;所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息,所述文件標(biāo)識信息可以是唯一云壓縮文件序列號;步驟202,客戶端從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);如前所述,所述云壓縮文件中可以包含唯一云壓縮文件序列號(通常以Hash值為序列號)、文件目錄結(jié)構(gòu)、文件名和文件大小等基本文件信息,客戶端可以直接讀取云壓縮文件內(nèi)含的基本文件信息。客戶端根據(jù)基本文件信息可以獲得文件目錄結(jié)構(gòu)和文件屬性 (文件名、文件大小等)。在實際應(yīng)用中,用戶在瀏覽器中單擊云壓縮文件打開后可以看到該云壓縮文件的內(nèi)部目錄、文件名、文件大小等基本文件信息,這些基本文件信息即是從云壓縮文件中獲得的。這樣,用戶可以打開云壓縮文件先查看該云壓縮文件的內(nèi)部文件目錄再決定是否下載并解壓,對于認(rèn)為沒有價值的文件用戶可以不選擇下載并解壓,這樣就不必下載解壓完再進(jìn)行刪除了。當(dāng)然,如果是默認(rèn)設(shè)置,則所述基本文件信息也可以不展示給用戶。步驟203,客戶端根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù);服務(wù)器可以根據(jù)云壓縮文件中的唯一云壓縮文件序列號查找到對應(yīng)的云壓縮數(shù)據(jù)的基本文件信息,然后依據(jù)所述基本文件信息再查找到對應(yīng)的壓縮數(shù)據(jù)。進(jìn)一步的,客戶端可以根據(jù)文件目錄結(jié)構(gòu)和文件屬性向服務(wù)器發(fā)出下載請求,客戶端可以選擇所述文件目錄結(jié)構(gòu)中的全部文件下載,也可以選擇部分文件下載。服務(wù)器根據(jù)所述下載請求查找對應(yīng)的云壓縮文件,并傳輸給客戶端。如果客戶端請求下載部分文件,則服務(wù)器根據(jù)客戶端請求的文件的序列號或文件名稱等信息,查找到對應(yīng)的文件并傳給客戶端。上述步驟202和步驟203沒有必然的先后順序。步驟204,客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)??蛻舳诉x擇存放目錄,并按照所述服務(wù)器返回的文件目錄結(jié)構(gòu),在本地的存放目錄下創(chuàng)建目錄結(jié)構(gòu),并進(jìn)行解壓。在上述解壓過程中,如果所述云壓縮文件設(shè)置了密碼,在步驟202之前,還需要用戶輸入密碼,然后服務(wù)器進(jìn)行驗證,驗證通過后,才繼續(xù)執(zhí)行步驟202?;趫D2所示的解壓縮方法,優(yōu)選的,如果很多用戶同時壓縮生成過相同文件的云壓縮文件,那么這些用戶在各自的客戶端本地可能擁有相同的壓縮前或解壓后的文件。 因此,在解壓云壓縮文件時,數(shù)據(jù)流可以不只來自于服務(wù)器,同樣可以來自于擁有相同原始文件的用戶客戶端上。即相當(dāng)于構(gòu)建了一個以壓縮后的文件為節(jié)點的P2P網(wǎng)絡(luò),并在服務(wù)器上維護(hù)每個壓縮后文件的所有客戶端的列表,同時還需要在客戶端本地保存云壓縮文件和原始文件目錄數(shù)據(jù)。這種處理方式將極大減少服務(wù)器帶寬占用和提高用戶的下載速度。上述內(nèi)容可以通過以下步驟實現(xiàn)所述通過打開云壓縮文件觸發(fā)云解壓請求后,還包括
客戶端根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù)并進(jìn)行下載;所述服務(wù)器指定的其他客戶端即是服務(wù)器所維護(hù)的列表中的客戶端;客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)。此外,優(yōu)選的,客戶端可以下載全部或部分的云壓縮數(shù)據(jù)。如前所述,在先生成云壓縮文件,然后再繼續(xù)上傳數(shù)據(jù)流的方式中,可以在未上傳完畢時,解壓云壓縮文件的人可以下載上傳了部分的數(shù)據(jù)流進(jìn)行解壓操作。即邊進(jìn)行壓縮上傳,邊進(jìn)行下載解壓,這種情況下,客戶端下載的就是部分的云壓縮數(shù)據(jù);當(dāng)上傳完畢后,就可以全部下載下來。還有一種下載部分云壓縮數(shù)據(jù)的情況,就是客戶端用戶根據(jù)基本文件信息(文件目錄結(jié)構(gòu))只選擇了其中的部分文件進(jìn)行下載,這種情況下服務(wù)器根據(jù)客戶端請求的文件的序列號或文件名等信息可以查找到對應(yīng)的文件,并發(fā)送給客戶端。需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。為了使本領(lǐng)域技術(shù)人員更加了解本發(fā)明的內(nèi)容,下面通過圖5至圖10的操作進(jìn)行說明。1、用系統(tǒng)右鍵菜單生成云壓縮文件的過程選擇即將云壓縮的文件,如圖11所示點擊右鍵菜單,選擇添加到云壓縮文件,如圖5. 1所示;點擊則彈出生成云壓縮對話框,如圖5. 2所示;壓縮方式若選擇自動,則將智能調(diào)整壓縮方式,例如存儲、最快、標(biāo)準(zhǔn)等。若選擇使用密碼,則可以添加生成云壓縮文件的密碼,如圖5. 3所示;若選擇使用注釋,則可以添加生成云壓縮文件的注釋,如圖5. 4所示;在上面的準(zhǔn)備云壓縮窗口中,點擊確定,則彈出開始云壓縮的進(jìn)度窗口,如圖5. 5 所示;用戶可以最小化到托盤,托盤區(qū)顯示進(jìn)度,如圖5. 6所示;在開啟了先制作云壓縮文件,后上傳數(shù)據(jù)時,將立即得到一個云壓縮文件,如圖 5. 7所示;同時托盤區(qū)顯示云壓縮正在進(jìn)行上傳數(shù)據(jù)流,如圖5. 8所示。2、用系統(tǒng)右鍵菜單一鍵生成云壓縮文件的過程選擇即將云壓縮的文件,點擊右鍵菜單,選擇添加到云壓縮文件“電子商務(wù).czip”,如圖6. 1所示;則顯示云壓縮過程,如圖6. 2所示;同樣的用戶可以點擊最小化等,同過程1。3、用云壓縮軟件主窗口生成云壓縮文件的過程打開云壓縮軟件主窗口,選擇要生成云壓縮的文件,點擊云壓縮按鈕,如圖7. 1所示;然后彈出生成云壓縮對話框,如圖7. 2所示,其余同過程1。4、用戶打開一個云壓縮文件的狀態(tài)用戶在雙擊一個云壓縮文件后,則彈出打開該云壓縮文件的內(nèi)部目錄,如圖8. 1 所示;當(dāng)打開一個包含密碼的云壓縮文件時,彈出密碼輸入框,如圖8. 2所示;當(dāng)打開一個包含注釋的云壓縮文件時,在右側(cè)顯示注釋,如圖8. 3所示。5、系統(tǒng)右鍵菜單解壓一個云壓縮文件的過程選擇一個云壓縮文件,點擊右鍵菜單,選擇解壓到,如圖9. 1所示;彈出解壓云壓縮文件對話框,如圖9. 2所示;點擊確定,進(jìn)行解壓,如圖9. 3所示;用戶可以最小化,如圖9. 4所示;上面的菜單中,如果用戶選擇解壓到當(dāng)前文件夾解壓到“電子商務(wù)/”下, 則解壓到當(dāng)前文件夾或“電子商務(wù)”文件夾下。6、云壓縮軟件主窗口解壓一個云壓縮文件的過程在云壓縮軟件的主窗口中,選擇一個云壓縮文件,選擇云解壓按鈕,如圖10. 1 所示;彈出解壓云壓縮文件對話框,如圖10. 2所示;點擊確定,進(jìn)行解壓,如圖10. 3所示;其余的和過程5相同?;谏鲜龇椒▽嵤├膬?nèi)容,本發(fā)明還提供了相應(yīng)的裝置和系統(tǒng)實施例。參照圖3,是本發(fā)明實施例所述一種基于云壓縮文件的壓縮裝置結(jié)構(gòu)圖。所述壓縮裝置包括客戶端裝置31和服務(wù)器裝置32,其中,所述客戶端裝置31包括云壓縮觸發(fā)單元311,用于觸發(fā)云壓縮請求;云壓縮單元312,用于依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;云壓縮文件接收單元313,用于從服務(wù)器接收對應(yīng)的云壓縮文件,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;所述服務(wù)器裝置32包括云壓縮數(shù)據(jù)存儲單元321,用于存儲客戶端上傳的云壓縮數(shù)據(jù);云壓縮文件生成單元322,用于依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端;映射單元323,用于對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。其中,所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),還可以包括文件名、文件大小、服務(wù)器地址等信息,其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息。具體的,所述文件標(biāo)識信息可以是唯一云壓縮文件序列號,所述唯一云壓縮文件序列號對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)、 文件的序列號、文件名、文件大小等信息。
所述云壓縮文件也可以僅包含唯一云壓縮文件序列號,稱為極小云壓縮文件,體積更小,更加節(jié)省空間。所述要壓縮的本地文件數(shù)據(jù)為單個文件,或者為多個文件,或者為單個文件夾,或者為多個文件夾。上述壓縮裝置可將任意大小的文件轉(zhuǎn)化為云壓縮文件,而且壓縮率降低到以下,幾乎不占空間。即任意大小的文件數(shù)據(jù),無論是IOM還是50M、100M、500M,還是1G,無論是文件還是文件夾,只要服務(wù)器空間足夠大,帶寬足夠高,都可以壓縮到IK以內(nèi)的大小。相對于傳統(tǒng)的50% -100%的壓縮率,所述的新型壓縮裝置實現(xiàn)的以下的超低壓縮率是革命性的。因此,如此小體積的云壓縮文件可以非常方便地通過郵件、論壇或即時通訊工具發(fā)送給他人,不占用空間,節(jié)省傳輸帶寬,易于分享。優(yōu)選的,如果所述請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器裝置32中的云壓縮文件生成單元322在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;如果所述請求為先生成云壓縮文件,則所述服務(wù)器裝置32中的云壓縮文件生成單元322在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時所述服務(wù)器裝置32中的云壓縮數(shù)據(jù)存儲單元321接收客戶端上傳的云壓縮數(shù)據(jù)并存儲。優(yōu)選的,為了避免服務(wù)器重復(fù)存儲的問題,所述客戶端裝置31還包括基本文件信息上傳單元314,用于將要壓縮的本地文件的基本文件信息上傳給服務(wù)器;所述云壓縮單元312還用于依據(jù)服務(wù)器的查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲; 所述服務(wù)器裝置32還包括查詢單元324,用于根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;如果服務(wù)器已存儲客戶端要壓縮的所有文件,則直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。優(yōu)選的,所述壓縮裝置還具有斷點續(xù)傳功能,如下所述客戶端裝置31的云壓縮單元312將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲;所述客戶端裝置31還包括斷點續(xù)傳單元315,用于當(dāng)所述云壓縮單元312上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,并重新開始上傳數(shù)據(jù)時,如果服務(wù)器上存在相同的數(shù)據(jù)塊,則不再上傳所述相同的數(shù)據(jù)塊;或者,在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。優(yōu)選的,所述壓縮裝置還具有加密和/或添加注釋的功能,如下所述客戶端裝置31還包括加密單元316,用于在云壓縮單元進(jìn)行壓縮前添加密碼;和/或,注釋單元317,用于在云壓縮單元進(jìn)行壓縮前添加注釋信息。
所述服務(wù)器裝置32也可以還包括 加密單元325,用于存儲云壓縮數(shù)據(jù)時添加密碼;
和/或,注釋單元326,用于存儲云壓縮數(shù)據(jù)時添加注釋信息。優(yōu)選的,所述壓縮裝置還具有以不同的壓縮級別進(jìn)行壓縮的功能,如下所述客戶端裝置31還包括壓縮級別調(diào)整單元318,用于智能判斷壓縮率并自動調(diào)整壓縮級別;所述云壓縮單元312以壓縮級別調(diào)整單元調(diào)整的壓縮級別進(jìn)行壓縮。對于上述壓縮裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見圖1方法實施例的部分說明即可。參照圖4,是本發(fā)明實施例所述一種基于云壓縮文件的解壓縮裝置結(jié)構(gòu)圖。所述解壓縮裝置包括客戶端裝置41和服務(wù)器裝置42,其中,所述客戶端裝置41包括云解壓觸發(fā)單元411,用于通過打開云壓縮文件觸發(fā)云解壓請求,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;基本文件信息獲取單元412,用于從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);下載單元413,用于根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù);解壓縮單元414,用于依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù);所述服務(wù)器裝置42包括云壓縮數(shù)據(jù)查詢單元421,用于根據(jù)客戶端上傳的基本文件信息查找對應(yīng)的云壓縮數(shù)據(jù),并返回給客戶端。優(yōu)選的,所述客戶端裝置41的下載單元413還用于根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù)。對于所述解壓縮裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見圖2方法實施例的部分說明即可?;趫D3和圖4,本發(fā)明還提供了一種基于云壓縮文件的系統(tǒng)實施例。所述系統(tǒng)包括上述的壓縮裝置和解壓縮裝置,由于其與裝置實施例基本相似,所以在此不再詳述,相關(guān)之處參見圖3和圖4所示實施例的部分說明即可。上文中的“和/或”表示本文既包含了 “和”的關(guān)系,也包含了 “或”的關(guān)系,其中 如果方案A與方案B是“和”的關(guān)系,則表示某實施例中可以同時包括方案A和方案B ;如果方案A與方案B是“或”的關(guān)系,則表示某實施例中可以單獨(dú)包括方案A,或者單獨(dú)包括方案 B0以上對本發(fā)明所提供的一種基于云壓縮文件的壓縮和解壓縮方法、裝置及系統(tǒng), 進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種基于云壓縮文件的壓縮方法,其特征在于,包括 觸發(fā)云壓縮請求;客戶端依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;服務(wù)器依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息; 服務(wù)器對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于所述要壓縮的本地文件數(shù)據(jù)為單個文件,或者為多個文件,或者為單個文件夾,或者為多個文件夾。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于如果所述云壓縮請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;如果所述云壓縮請求為先生成云壓縮文件,則所述服務(wù)器在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時接收客戶端上傳的云壓縮數(shù)據(jù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,如果所述云壓縮請求為先生成云壓縮文件,則還包括在客戶端未上傳完畢的時候,另一客戶端通過點擊云壓縮文件從所述服務(wù)器下載已經(jīng)上傳的部分云壓縮數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述觸發(fā)云壓縮請求之后,還包括 客戶端將要壓縮的本地文件的基本文件信息上傳給服務(wù)器;服務(wù)器根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;客戶端依據(jù)所述查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲;如果服務(wù)器已存儲客戶端要壓縮的所有文件,則服務(wù)器直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于客戶端將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲; 若客戶端上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,則所述方法還包括 客戶端重新開始上傳數(shù)據(jù),如果服務(wù)器上存在相同的數(shù)據(jù)塊,則客戶端不再上傳所述相同的數(shù)據(jù)塊;或者,客戶端在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述觸發(fā)云壓縮請求之后,還包括 客戶端在壓縮前添加密碼和/或注釋信息;或者,服務(wù)器存儲云壓縮數(shù)據(jù)時添加密碼和/或注釋信息。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述觸發(fā)云壓縮請求之后,還包括 客戶端智能判斷壓縮率并自動調(diào)整壓縮級別進(jìn)行壓縮。
10.一種基于云壓縮文件的解壓縮方法,其特征在于,包括通過打開云壓縮文件觸發(fā)云解壓請求,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;客戶端從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);客戶端根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù); 客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述客戶端從所述云壓縮文件中獲取基本文件信息后,還包括客戶端根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù); 客戶端依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù)。
12.根據(jù)權(quán)利要求10或11所述的方法,其特征在于所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。
13.根據(jù)權(quán)利要求10或11所述的方法,其特征在于 所述客戶端下載全部或部分云壓縮數(shù)據(jù)。
14.一種基于云壓縮文件的壓縮裝置,其特征在于,包括客戶端裝置和服務(wù)器裝置, 其中,所述客戶端裝置包括云壓縮觸發(fā)單元,用于觸發(fā)云壓縮請求;云壓縮單元,用于依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;云壓縮文件接收單元,用于從服務(wù)器接收對應(yīng)的云壓縮文件,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息; 所述服務(wù)器裝置包括云壓縮數(shù)據(jù)存儲單元,用于存儲客戶端上傳的云壓縮數(shù)據(jù);云壓縮文件生成單元,用于依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端;映射單元,用于對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于所述云壓縮文件包含文件標(biāo)識信息和/或文件目錄結(jié)構(gòu),其中所述文件標(biāo)識信息對應(yīng)服務(wù)器中云壓縮數(shù)據(jù)的基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu)。
16.根據(jù)權(quán)利要求14所述的裝置,其特征在于所述要壓縮的本地文件數(shù)據(jù)為單個文件,或者為多個文件,或者為單個文件夾,或者為多個文件夾。
17.根據(jù)權(quán)利要求14所述的裝置,其特征在于如果所述云壓縮請求為先壓縮并上傳數(shù)據(jù),再生成云壓縮文件,則所述服務(wù)器裝置中的云壓縮文件生成單元在客戶端上傳完畢之后,再依據(jù)所述請求生成對應(yīng)的云壓縮文件;如果所述云壓縮請求為先生成云壓縮文件,則所述服務(wù)器裝置中的云壓縮文件生成單元在接收到所述請求后依據(jù)所述請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件立即發(fā)送給客戶端,同時所述服務(wù)器裝置中的云壓縮數(shù)據(jù)存儲單元接收客戶端上傳的云壓縮數(shù)據(jù)并存儲。
18.根據(jù)權(quán)利要求14所述的裝置,其特征在于, 所述客戶端裝置還包括基本文件信息上傳單元,用于將要壓縮的本地文件的基本文件信息上傳給服務(wù)器; 所述云壓縮單元還用于依據(jù)服務(wù)器的查詢結(jié)果,將服務(wù)器未存儲的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的云壓縮數(shù)據(jù)上傳至服務(wù)器存儲; 所述服務(wù)器裝置還包括查詢單元,用于根據(jù)所述基本文件信息查詢是否存儲了相同的文件,并將查詢結(jié)果返回給客戶端,所述查詢結(jié)果中包含服務(wù)器未存儲的部分文件的基本文件信息;如果服務(wù)器已存儲客戶端要壓縮的所有文件,則直接將對應(yīng)的云壓縮文件發(fā)送給客戶端。
19.根據(jù)權(quán)利要求14所述的裝置,其特征在于所述客戶端裝置的云壓縮單元將壓縮后的云壓縮數(shù)據(jù)分塊上傳至服務(wù)器存儲;所述客戶端裝置還包括斷點續(xù)傳單元,用于當(dāng)所述云壓縮單元上傳部分?jǐn)?shù)據(jù)后發(fā)生上傳失敗,并重新開始上傳數(shù)據(jù)時,如果服務(wù)器上存在相同的數(shù)據(jù)塊,則不再上傳所述相同的數(shù)據(jù)塊;或者,在上傳失敗的斷點處做標(biāo)記,然后從所述標(biāo)記的斷點處繼續(xù)上傳數(shù)據(jù)。
20.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述客戶端裝置還包括 加密單元,用于在云壓縮單元進(jìn)行壓縮前添加密碼;和/或,注釋單元,用于在云壓縮單元進(jìn)行壓縮前添加注釋信息。
21.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述服務(wù)器裝置還包括 加密單元,用于存儲云壓縮數(shù)據(jù)時添加密碼;和/或,注釋單元,用于存儲云壓縮數(shù)據(jù)時添加注釋信息。
22.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述客戶端裝置還包括 壓縮級別調(diào)整單元,用于智能判斷壓縮率并自動調(diào)整壓縮級別;所述云壓縮單元以壓縮級別調(diào)整單元調(diào)整的壓縮級別進(jìn)行壓縮。
23.一種基于云壓縮文件的解壓縮裝置,其特征在于,包括客戶端裝置和服務(wù)器裝置,其中,所述客戶端裝置包括云解壓觸發(fā)單元,用于通過打開云壓縮文件觸發(fā)云解壓請求,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;基本文件信息獲取單元,用于從所述云壓縮文件中獲取基本文件信息,所述基本文件信息包含文件目錄結(jié)構(gòu);下載單元,用于根據(jù)所述云壓縮文件,從服務(wù)器上下載對應(yīng)的云壓縮數(shù)據(jù); 解壓縮單元,用于依據(jù)所述基本文件信息對下載到本地的云壓縮數(shù)據(jù)進(jìn)行解壓,得到原始文件數(shù)據(jù);所述服務(wù)器裝置包括云壓縮數(shù)據(jù)查詢單元,用于根據(jù)客戶端上傳的基本文件信息查找對應(yīng)的云壓縮數(shù)據(jù), 并返回給客戶端。
24.根據(jù)權(quán)利要求23所述的裝置,其特征在于所述客戶端裝置的下載單元還用于根據(jù)所述云壓縮文件,從服務(wù)器指定的其他客戶端上下載對應(yīng)的云壓縮數(shù)據(jù)。
25.一種基于云壓縮文件的系統(tǒng),其特征在于,包括權(quán)利要求14至22任一權(quán)利要求所述的壓縮裝置,和,權(quán)利要求23至M任一權(quán)利要求所述的解壓縮裝置。
全文摘要
本發(fā)明提供了一種基于云壓縮文件的壓縮和解壓縮方法、裝置及系統(tǒng),以解決現(xiàn)有技術(shù)中文件壓縮率不夠低,限制文件在互聯(lián)網(wǎng)上交換和分享的問題。所述壓縮方法包括觸發(fā)云壓縮請求;客戶端依據(jù)所述云壓縮請求對要壓縮的本地文件數(shù)據(jù)進(jìn)行自動壓縮,并將壓縮后的數(shù)據(jù)上傳至服務(wù)器作為云壓縮數(shù)據(jù)存儲;服務(wù)器依據(jù)所述云壓縮請求生成對應(yīng)的云壓縮文件,并將該云壓縮文件發(fā)送給客戶端,所述云壓縮文件包含云壓縮數(shù)據(jù)的文件標(biāo)識信息;服務(wù)器對云壓縮數(shù)據(jù)建立與云壓縮文件的映射關(guān)系。本發(fā)明可將任意大小的文件轉(zhuǎn)化為云壓縮文件,而且壓縮率降低到1%以下,幾乎不占空間。
文檔編號H04L29/06GK102546740SQ20111017379
公開日2012年7月4日 申請日期2011年6月24日 優(yōu)先權(quán)日2011年6月24日
發(fā)明者馬占凱 申請人:奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
梧州市| 冷水江市| 望城县| 历史| 江华| 赤水市| 河池市| 高邮市| 靖州| 白银市| 定陶县| 杭锦后旗| 新郑市| 叙永县| 山丹县| 安宁市| 望城县| 同仁县| 若尔盖县| 包头市| 马鞍山市| 丰县| 敦化市| 墨玉县| 彝良县| 桦南县| 双流县| 陇川县| 永和县| 莲花县| 青冈县| 台南市| 阿瓦提县| 浦县| 揭阳市| 乌兰浩特市| 博兴县| 凭祥市| 鄂托克前旗| 游戏| 远安县|