專利名稱:電子文件打包方法
技術領域:
本發明涉及一種電子文件的打包方法,尤其涉及一種電子文件打包方法。
背景技術:
就現有的技術來看,一個大型的商業包含很多資源,如圖像、聲音、文本、腳本和其 他各種類型的數據,一般的客戶端可能存在上萬個文件,并且網絡在運營后會頻繁的進行 源文件的更新。因此,如果讀取未經打包的大量散的文件,則在文件讀取過程中操作系統需要花 大量的時間來對每個文件的位置進行硬盤定位查找。相對來說,而打包后則只需要讀取少 量的幾個壓縮文件包,這樣就節省大量查詢文件位置的時間,從而大大提高了資源的讀取 速度。同時,就文件的安全性來看,玩家往往可以隨意更改未打包的文件,比如某些ini 文件。并且很容易造成對未經打包的散的文件的誤刪和錯誤,從而影響了的正常運行。并且,結合節約磁盤空間的角度來看,現有的玩家所運行的客戶端文件有太多的 分散文件。文件太多的話,很容易產生“碎片”。比如一個1個字節的文件,占用空間就可能 達 4Kb。再者,目前的網絡源文件打包的方法在對正式對外客戶端的源文件進行打包的同 時,又對內部開發人員使用的源文件也進行打包。這樣雖然對玩家提供了 一些便利,但是內 部開發人員在對資源文件進行讀取、修改、測試時就造成了很大的不便。因此需要一種既適合內部開發人員頻繁地修改、測試文件,又能加快文件的讀取 速度、提高文件的安全性、節省文件在磁盤中所占的空間、增加文件的美觀度,并且能很好 的支持網絡運營后頻繁的源文件更新的文件打包方法。
發明內容
本發明的目的就是為了解決現有技術中存在的上述問題,提供一種電子文件打包 方法本發明的目的通過以下技術方案來實現電子文件打包方法,涉及對外運行用客戶端及對內開發用客戶端,其中所述的對 外運行用客戶端由文件打包生成的壓縮文件包和少量未打包的文件組成,并通過配置文件 來記錄客戶端里的壓縮文件包,對內開發用客戶端全部由未打包的且單獨存在文件組成, 文件包管理模塊通過判斷配置文件的內容來判斷是從的壓縮文件包里讀寫文件數據,還是 從單獨存在的文件里讀寫文件數據。上述的電子文件打包方法,其中所述的文件包管理模塊位于游戲客戶端內,是文 件讀寫的核心模塊,游戲程序通過調用該模塊來進行文件讀寫。進一步地,上述的電子文件打包方法,其中所述的文件打包是指將指定目錄下 的全部文件打包成一個大的壓縮文件包文件,壓縮文件包文件的名稱就是該指定目錄的名
3稱。更進一步地,上述的電子文件打包方法,其中所述的對外客戶端,最開始時只有 更新程序和文件包管理模塊以及壓縮文件包的配置文件組成,通過更新將游戲文件寫入到 客戶端壓縮文件包里。更進一步地,上述的電子文件打包方法,其中所述配置文件的內容包含客戶端里 中各個壓縮文件包的路徑,當對外運行用客戶端需要讀寫文件數據時,文件包管理模塊通 過判斷文件的路徑來知曉該文件是否被打包,當該文件已被打包時文件包管理模塊從壓縮 文件包里讀寫文件數據,當該文件未被打包時文件包管理模塊從單獨存在的文件里讀寫文 件數據。更進一步地,上述的電子文件打包方法,其中所述的壓縮文件包的自身數據構成 分為兩部分,一部分用以存放文件的目錄信息,另一部分用以存放文件的數據信息。并且, 開始時將在壓縮文件包里分配足夠的空間來存放目錄信息。更進一步地,上述的電子文件打包方法,其中所述文件的目錄信息由包含文件路 徑的文件名以及用于記錄文件存放在壓縮文件包里的地址范圍的段組成。更進一步地,上述的電子文件打包方法,其中所述地址范圍依次記錄在十個段 中,最開始時文件只需要使用一個段,當文件數據增多時將會把多的數據放到下一個段里, 當十個段都用完時將地址范圍進行優化。更進一步地,上述的電子文件打包方法,其中所述的優化是當十個段都用完時, 將數據長度最小的段的地址范圍遺棄,并在壓縮文件包的末尾分配一個新的地址范圍,并 將新的地址范圍的值記錄在段里,然后將文件數據按地址范圍寫到壓縮文件包中。更進一步地,上述的電子文件打包方法,其中所述的壓縮文件包在創建一個新的 文件時,首先在壓縮文件包的目錄數據里增加一個新文件的目錄,將文件數據寫壓縮文件 包的末尾,并地址范圍記錄在第一個段里。再進一步地,上述的電子文件打包方法,其中所述的增加一個新文件的目錄,當 壓縮文件包目錄數據空間不足時,文件包管理系統將自動生成一個新的壓縮文件包文件, 新的壓縮文件包文件的名字按遞增次序命名,文件包管理系統在讀寫時能自動識別。本發明技術方案的突出的實質性特點和顯著的進步主要體現在采用本發明后, 內部開發人員所使用的對內開發用客戶端中的源文件是未打包的,散的文件,便于內部開 發人員對文件隨時進行讀取、修改、測試等操作。而正式的對外客戶端的文件是打包的,打 包后的文件可以提高文件讀取速度,防止玩家將未經打包的散文件不小心刪掉從而影響的 正常運行,節省磁盤空間,同時還增加了美觀度。并且,文件包管理模塊能夠自動識別文件, 進行文件的讀寫操作,可以通過寫操作將源文件存放到正式的客戶端壓縮文件包里。能很 好的支持網絡運營后頻繁的源文件更新,非常適合網絡的開發應用。
本發明的目的、優點和特點,將通過下面優選實施例的非限制性說明進行圖示和 解釋。這些實施例僅是應用本發明技術方案的典型范例,凡采取等同替換或者等效變換而 形成的技術方案,均落在本發明要求保護的范圍之內。這些附圖當中,圖1是本發明中的壓縮文件包的結構意圖2是本發明中的文件結構意圖;圖3是本發明中的文件包管理模塊讀寫文件的流程圖;圖中各附圖標記的含義如下1目錄信息 2數據信息3文件名 4段
具體實施例方式如圖1、圖2所示的電子文件打包方法,涉及對外運行用客戶端及對內開發用客戶 端,其特別之處在于所述的對外運行用客戶端由文件打包生成的壓縮文件包及文件組成, 對內開發用客戶端內由若干未打包的且單獨存在文件組成,對外運行用客戶端需要讀寫文 件數據時,文件包管理模塊通過判斷配置文件的內容來判斷更新的文件是從對外運行用客 戶端內的壓縮文件包讀寫,還是從單獨存在的文件讀寫。其中所述的文件包管理模塊位于 游戲客戶端內,是文件讀寫的核心模塊,游戲程序通過調用該模塊來進行文件讀寫。進一步來看,所述的對外客戶端,最開始時只有更新程序和文件包管理模塊以及 壓縮文件包的配置文件組成,通過更新將游戲文件寫入到客戶端壓縮文件包里。更進一步來看,所述的文件打包是指將指定目錄下的全部文件打包成一個大的壓 縮文件包文件,壓縮文件包文件的名稱就是該指定目錄的名稱。就本發明一較佳的實施方式來看,配置文件的內容包含客戶端中各個壓縮文件包 的名稱(包含路徑),當對外運行用客戶端需要讀寫文件數據時,文件包管理模塊通過判斷 文件的路徑來知曉該文件是否被打包,當該文件已被打包時文件包管理模塊從壓縮文件包 里讀寫文件數據,當該文件未被打包時文件包管理模塊從單獨存在的文件里讀寫文件數據 (如圖3所示)。這樣,可以實現文件讀寫的快速識別。并且,就壓縮文件包的自身數據的 最佳構成出發,壓縮文件包的自身數據構成分為兩部分,一部分用以存放文件的目錄信息 1,另一部分用以存放文件的數據信息2。由此,能夠對壓縮文件包的數據進行科學整合,減 少不必要的沉余數據。考慮到網絡游戲的開發需要,便于對打包生成的壓縮文件包中的文件進行便捷的 瀏覽、解包、添加和刪除等操作,特別是便于文件打包后的更新,所述文件由文件名3以及 用于記錄文件存放在壓縮文件包里的地址范圍的段4組成。進一步來看,地址范圍依次記錄在十個段4中,當十個段4都用完時將地址范圍進 行優化。具體來說,優化是當十個段4都用完時,將地址范圍最小的段4遺棄,再生成一個新 段4放在壓縮文件包的末尾,并將新添加的文件數據的地址范圍值記錄在該新段4中。這 樣,能夠實現對各個文件的數據更新,無須繁瑣的重復解包、打包。通過上述的文字表述并結合附圖可以看出,采用本發明后,內部開發人員所使用 的對內開發用客戶端中的源文件是未打包的,散的源文件,便于內部開發人員對文件隨時 進行讀取、修改、測試等操作。而正式的對外客戶端的源文件是打包的,打包后的源文件可 以提高文件讀取速度,防止玩家將未經打包的散文件不小心刪掉從而影響的正常運行,節 省磁盤空間,同時還增加了美觀度。并且,文件包管理模塊能夠自動識別文件,進行文件的 讀寫操作,可以通過寫操作將源文件存放到正式的客戶端壓縮文件包里。能很好的支持網 絡運營后頻繁的文件更新,非常適合網絡的開發應用。
權利要求
電子文件打包方法,涉及對外運行用客戶端及對內開發用客戶端,對內開發用客戶端全部由未打包的且單獨存在文件組成,其特征在于所述的對外運行用客戶端由文件打包生成的壓縮文件包和少量未打包的文件組成,通過配置文件來記錄對外運行用客戶端里的壓縮文件包;對外運行用客戶端需要讀寫文件數據時,文件包管理模塊通過判斷配置文件的信息來判斷是從壓縮文件包里讀寫文件數據,還是從單獨存在的文件里讀寫文件數據。
2.根據權利要求1所述的電子文件打包方法,其特征在于所述的文件包管理模塊位 于游戲客戶端內,是文件讀寫的核心模塊,游戲程序通過調用該模塊來進行文件讀寫。
3.根據權利要求1所述的電子文件打包方法,其特征在于所述的文件打包是指將指 定目錄下的全部文件打包成一個大的壓縮文件包文件,壓縮文件包文件的名稱就是該指定 目錄的名稱。
4.根據權利要求1所述的電子文件打包方法,其特征在于所述的對外客戶端,最開始 時只有更新程序和文件包管理模塊以及壓縮文件包的配置文件組成,通過更新將游戲文件 寫入到客戶端壓縮文件包里。
5.根據權利要求1所述的電子文件打包方法,其特征在于所述配置文件的內容包含 對外運行用客戶端中各個壓縮文件包的路徑,當對外運行用客戶端需要讀寫文件數據時, 文件包管理模塊通過判斷文件的路徑來知曉該文件是否被打包,當該文件已被打包時文件 包管理模塊從壓縮文件包里讀寫文件數據,當該文件未打包時文件包管理模塊從單獨存在 的文件里讀寫文件數據。
6.根據權利要求1所述的電子文件打包方法,其特征在于所述的壓縮文件包的自身 數據構成分為兩部分,一部分用以存放文件的目錄信息,另一部分用以存放文件的數據信 肩、ο
7.根據權利要求6所述的電子文件打包方法,其特征在于所述文件的目錄信息由含 文件路徑的文件名以及用于記錄文件存放在壓縮文件包里的地址范圍的段組成。
8.根據權利要求7所述的電子文件打包方法,其特征在于所述地址范圍依次記錄在 十個段中,最開始時文件只需要使用一個段,當文件數據增多時將會把多的數據放到下一 個段里,當十個段都用完時將地址范圍進行優化。
9.根據權利要求8所述的電子文件打包方法,其特征在于所述的優化是當十個段都 用完時,將數據長度最小的段的地址范圍遺棄,并在壓縮文件包的末尾分配一個新的地址 范圍,并將新的地址范圍的值記錄在段里,然后將文件數據按地址范圍寫到壓縮文件包中。
全文摘要
本發明涉及一種電子文件打包方法,涉及對外運行用客戶端及對內開發用客戶端,特點是所述的對外運行用客戶端由文件打包生成的壓縮文件包和少量未打包的文件組成,并通過配置文件來記錄客戶端里的壓縮文件包,對內開發用客戶端全部由未打包的且單獨存在文件組成,文件包管理模塊通過判斷配置文件的內容來判斷是從的壓縮文件包里讀寫文件數據,還是從單獨存在的文件里讀寫文件數據。采用本發明后,既便于內部開發人員對文件隨時進行讀取、修改、測試等操作,又達到了對外運行用客戶端提高文件讀取速度,節省磁盤空間。
文檔編號G06F17/30GK101814069SQ20091002510
公開日2010年8月25日 申請日期2009年2月20日 優先權日2009年2月20日
發明者賓曉華 申請人:蘇州市蝸牛電子有限公司