国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      文件處理方法,數(shù)據(jù)處理裝置和存儲介質(zhì)的制作方法

      文檔序號:6442552閱讀:267來源:國知局
      專利名稱:文件處理方法,數(shù)據(jù)處理裝置和存儲介質(zhì)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明一般涉及文件處理方法,數(shù)據(jù)處理裝置和存儲介質(zhì),尤其涉及一種文件處理方法和數(shù)據(jù)處理裝置,用于壓縮文件,例如壓縮涉及一個或多個詞典,百科全書等的詞典文件,把壓縮文件存儲在存儲介質(zhì)中并從存儲介質(zhì)中讀取所存儲的文件,并把所讀取的文件讀到一種存儲介質(zhì)中,該存儲介質(zhì)中存儲了文件,例如壓縮的詞典文件。
      背景技術(shù)
      近來,存在例如CD-ROM的存儲介質(zhì),其中CD-ROM可以預(yù)先存儲有關(guān)于詞典,百科全書等的信息。通過從計算機訪問這種CD-ROM,可以讀取并顯示有關(guān)于詞典,百科全書等的信息。結(jié)果是,有關(guān)于詞典,百科全書等的大量信息可以存儲在一張極其緊密的CD-ROM中。另外,當(dāng)使用計算機時不必打開詞典,百科全書等來獲取必要的信息,可從CD-ROM中讀取必要的信息,從而可大大的節(jié)省時間和減少麻煩。
      常規(guī)的用于存儲有關(guān)于詞典,百科全書等的信息的CD-ROM中,詞典文件由詞典數(shù)據(jù)和有關(guān)于索引的數(shù)據(jù)(以后稱為索引數(shù)據(jù))組成。例如,在存儲百科全書的情況下,詞典數(shù)據(jù)包括有關(guān)于文本的數(shù)據(jù)(以后稱為文本數(shù)據(jù)),其中文本用于解釋單詞的意思,有關(guān)于一個圖象的數(shù)據(jù)(以后稱為圖象數(shù)據(jù)),其中如果單詞描述的是一個動物則這一圖象數(shù)據(jù)顯示出一個動物,有關(guān)于一種聲音的數(shù)據(jù)(以后稱為聲音數(shù)據(jù)),例如一種鳥的叫聲,如果單詞描述的是這種鳥的話,等。另一方面,索引用于從詞典文件中檢索所需的詞典數(shù)據(jù),并且根據(jù)詞典數(shù)據(jù)提供索引。索引有時也指關(guān)鍵字。索引數(shù)據(jù)包括有關(guān)于標題的指針,有關(guān)于項的指針等。有關(guān)于標題的數(shù)據(jù)包括中心詞。另外,有關(guān)于項的數(shù)據(jù)包括中心詞,注釋等。
      目前,由于CD-ROM的存儲能力是比較大的,因此文本數(shù)據(jù)和索引數(shù)據(jù)未經(jīng)壓縮就可存儲在一張CD-ROM中。另一方面,聲音數(shù)據(jù)尤其是圖象數(shù)據(jù)中所包括的信息量非常大,因此在這些數(shù)據(jù)在被存儲在CD-ROM中之前,根據(jù)適當(dāng)?shù)膲嚎s技術(shù)分別對聲音數(shù)據(jù)和圖象數(shù)據(jù)進行壓縮。
      然而,如果每個詞典或百科全書都需要一個CD-ROM,則不能很好的利用詞典數(shù)據(jù)。因此,需要把有關(guān)于多個詞典,百科全書等的信息存儲在一張CD-ROM中,但是由于即使詞典數(shù)據(jù)已被壓縮過,所需存儲的信息量仍可能超過單張CD-ROM的存儲量,因此就存在了問題。另外,甚至于在需要存儲在CD-ROM中的詞典文件只是有關(guān)于一個詞典,百科全書等的情況下,當(dāng)詞典文件的信息量增加時,即使詞典數(shù)據(jù)已被壓縮過,所需存儲的信息量仍可能超過單張CD-ROM的存儲量,。
      相應(yīng)地,可考慮在把有關(guān)于詞典,百科全書等的信息存儲在CD-ROM中時,不僅需要對詞典數(shù)據(jù)進行壓縮,而且需要對整個詞典文件包括索引數(shù)據(jù)進行壓縮。但是到目前為止還沒有提出一種可通過比較簡單的技術(shù)來對整個詞典文件進行有效的壓縮,并且能夠在短時間內(nèi)對壓縮的詞典文件進行擴展的方法。特別是在詞典,百科全書等的情況下,在這些情況下有關(guān)于索引數(shù)據(jù)的信息量非常大。因此,當(dāng)對壓縮的詞典文件進行擴展時,如果花費很長的時間來執(zhí)行索引數(shù)據(jù)的恢復(fù)處理,則訪問所需要的索引數(shù)據(jù)或詞典數(shù)據(jù)的時間將會變長,從而降低了詞典,百科全書等的方便性。
      而且,當(dāng)把詞典數(shù)據(jù)壓縮成索引項的方式或定長的方式時,例如,由于有關(guān)于索引數(shù)據(jù)的信息量很大,特別是在詞典,百科全書等的情況下,因此會花費很長的時間來執(zhí)行對壓縮詞典文件的擴展處理,從而同樣地減低了詞典,百科全書的方便性,例如,日本公開專利申請NO.9-26969提出了一種電話號碼簿檢索系統(tǒng),該系統(tǒng)使用了與上述方法類似的一種方法。然而,該系統(tǒng)所提出的方法并未對索引數(shù)據(jù)進行壓縮。在電話號碼簿的情況中,有關(guān)于索引數(shù)據(jù)的信息量與有關(guān)于相應(yīng)于詞典數(shù)據(jù)的電話號碼,姓,名,公司名和地址相比要小的多。因此,即使對電話號碼簿的索引數(shù)據(jù)進行了壓縮,整個信息壓縮的效率也不會大大地提高。因此,即使把該系統(tǒng)所提出的方法應(yīng)用于把有關(guān)于詞典,百科全書等存儲在存儲介質(zhì)中的存儲中,也不會如所設(shè)想的那樣大大地提高詞典文件的整體的信息壓縮效率。
      相應(yīng)地,在有關(guān)于索引數(shù)據(jù)的信息量非常大的情況下,甚至在這種信息量同有關(guān)于詞典數(shù)據(jù)例如詞典,百科全書等的信息量相比也是非常大的情況下,由于目前還不能有效地對詞典文件進行壓縮并把壓縮文件存儲在存儲介質(zhì)中,并且還不能通過比較簡單的處理在短時間內(nèi)訪問壓縮的詞典文件,因此就存在有問題。

      發(fā)明內(nèi)容
      因此,本發(fā)明的一個目的在于提供一種文件處理方法,一種數(shù)據(jù)處理裝置和一種存儲介質(zhì),利用這些方法,裝置和介質(zhì)可有效地對詞典文件進行壓縮并把它存儲在存儲介質(zhì)中,并且可通過比較簡單的處理在短時間內(nèi)訪問壓縮的詞典文件,甚至于在有關(guān)于索引數(shù)據(jù)的信息量與有關(guān)詞典數(shù)據(jù)例如詞典,百科全書等的信息量相比也是很大的情況下。
      本發(fā)明的另一個目的在于提供一種文件處理方法,該方法包括一個壓縮步驟和一個存儲步驟,其中壓縮步驟把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并分別對這些部分進行壓縮以獲得壓縮文件,其中存儲步驟把壓縮文件和經(jīng)過壓縮后的各部分的地址信息存儲在存儲介質(zhì)中。根據(jù)本發(fā)明,可有效地對文件例如詞典文件進行壓縮并把它存儲在存儲介質(zhì)中,其中詞典文件由包括索引,每一項的文本等的數(shù)據(jù)組成。另外,可通過對每個部分的壓縮文件進行擴展,從而可通過比較簡單的處理快速地進行文件檢索。
      當(dāng)每一部分都是定長時,在壓縮文件中就不必在壓縮文件中包括壓縮數(shù)據(jù)之前的地址信息,從而可提高數(shù)據(jù)壓縮效率。另一方面,當(dāng)每一部分均是變長時,則所述存儲步驟還應(yīng)在存儲介質(zhì)中存儲壓縮數(shù)據(jù)之前的地址信息,從而可以根據(jù)數(shù)據(jù)類型和部分把該部分設(shè)置為適當(dāng)?shù)拈L度,從而可快速的進行數(shù)據(jù)擴展。
      當(dāng)文件處理方法還包括一個恢復(fù)步驟時,可通過使用一個輔助存儲單元來提高文件檢索速度,其中恢復(fù)步驟從存儲介質(zhì)中讀取壓縮文件并對壓縮文件的每一部分進行擴展以恢復(fù)數(shù)據(jù)和索引數(shù)據(jù),其中輔助存儲單元可進行快速數(shù)據(jù)訪問并把恢復(fù)的數(shù)據(jù)和索引數(shù)據(jù)存儲在輔助存儲單元中。
      當(dāng)壓縮步驟使用了每一部分的數(shù)據(jù)和索引數(shù)據(jù)所共同的壓縮算法和壓縮參數(shù)時,則可以在數(shù)據(jù)擴展時通過使用共同的壓縮算法和壓縮參數(shù)來簡化數(shù)據(jù)壓縮處理和數(shù)據(jù)擴展處理。尤其是,可以使用哈夫曼編碼,通用編碼等作為壓縮算法。
      本發(fā)明的另一個目的在于提供一種文件處理方法,該方法包括一個讀取步驟和一個恢復(fù)步驟,其中讀取步驟從存儲介質(zhì)中讀取壓縮文件和壓縮后每部分的地址信息,對于每個部分來說,所述壓縮文件是通過把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并分別對各個部分進行壓縮后得到的,其中恢復(fù)步驟對壓縮文件進行擴展并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。根據(jù)本發(fā)明,通過對每一部分執(zhí)行壓縮文件例如壓縮的詞典文件的擴展,可通過比較簡單的處理來實現(xiàn)快速文件檢索。
      本發(fā)明的另一個目的在于提供一種數(shù)據(jù)處理裝置,該裝置包括壓縮裝置和存儲裝置,其中壓縮裝置用于把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并分別對這些部分進行壓縮以獲得壓縮文件,其中存儲裝置用于把壓縮文件和壓縮后各部分的地址信息存儲在存儲介質(zhì)中。根據(jù)本發(fā)明,可有效地對由包括索引,各項的文本等的數(shù)據(jù)組成文件進行壓縮并把壓縮文件存儲在存儲介質(zhì)中。另外,通過對壓縮文件的每一部分進行擴展,可通過使用比較簡單的處理來實現(xiàn)快速文件檢索。
      本發(fā)明的另一個目的在于提供一種數(shù)據(jù)處理裝置,該裝置包括讀取裝置和恢復(fù)裝置,其中讀取裝置用于從存儲介質(zhì)中讀取壓縮文件和壓縮后每部分的地址信息,其中所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并分別對這些部分進行壓縮后獲得的,其中恢復(fù)裝置用于擴展壓縮文件并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。根據(jù)本發(fā)明,通過對壓縮文件的每一部分進行擴展,可通過使用比較簡單的處理來實現(xiàn)快速文件檢索。
      本發(fā)明的另一個目的在于提供一種用于存儲計算機可讀信息的存儲介質(zhì),該存儲介質(zhì)包括讀取裝置和恢復(fù)裝置,其中讀取裝置用于使得計算機從存儲介質(zhì)中讀取壓縮文件和壓縮后每部分的地址信息,對于每一部分來講,所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并對這些部分進行壓縮后獲得的,其中恢復(fù)裝置用于使得計算機對壓縮文件進行擴展并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。根據(jù)本發(fā)明,通過對壓縮文件的每一部分進行擴展,可通過使用比較簡單的處理來實現(xiàn)快速文件檢索。
      本發(fā)明的另一個目的在于提供一種用于存儲計算機可讀信息的存儲介質(zhì),其中該信息包括壓縮后每部分的地址信息及壓縮文件,對于每一部分來講,所述壓縮文件是通過把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并對這些部分進行壓縮后得到的,其中是使用了每部分所共同的壓縮算法和壓縮參數(shù)對所述壓縮文件進行壓縮的。根據(jù)本發(fā)明,可有效地對文件進行壓縮并把它存儲在存儲介質(zhì)中。根據(jù)本發(fā)明,通過對壓縮文件的每一部分進行擴展,可使用比較簡單的處理來實現(xiàn)快速文件恢復(fù)。
      本發(fā)明的另一個目的在于提供一種用于存儲計算機可讀信息的存儲介質(zhì),包括計算機程序,該程序使得計算機執(zhí)行壓縮程序和存儲程序,其中壓縮程序用于根據(jù)詞典數(shù)據(jù)把詞典數(shù)據(jù)和數(shù)據(jù)劃分成多個部分,并對各個部分進行壓縮以獲得壓縮的詞典文件,其中存儲程序用于把壓縮的詞典文件和壓縮后各部分的地址信息存儲在存儲介質(zhì)中。根據(jù)本發(fā)明,可以通過執(zhí)行比較簡單的處理來快速地檢索文件。
      本發(fā)明的另一個目的在于提供一種用于存儲壓縮文件的計算機可讀存儲介質(zhì),其中存儲介質(zhì)包括一個壓縮數(shù)據(jù)區(qū),一個地址信息區(qū)和一個壓縮參數(shù)區(qū),其中壓縮數(shù)據(jù)區(qū)用于存儲通過把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并對各個部分進行壓縮后所獲得的壓縮數(shù)據(jù),其中地址信息區(qū)用于存儲壓縮后各部分的地址信息,其中壓縮參數(shù)區(qū)用于存儲用于壓縮的壓縮參數(shù)。根據(jù)本發(fā)明,可通過執(zhí)行比較簡單的處理來地檢索文件。
      因此,根據(jù)本發(fā)明,即使在有關(guān)于索引數(shù)據(jù)的信息量比有關(guān)于詞典數(shù)據(jù)例如詞典,百科全書等的信息量還大的情況下,也可有效地對文件例如詞典文件進行壓縮并把它存儲在存儲介質(zhì)中,并且可通過執(zhí)行比較簡單的處理在短時間內(nèi)訪問該文件,例如壓縮的詞典文件。
      通過結(jié)合附圖閱讀下面的詳細描述可清楚地了解到本發(fā)明的其他一些目的或特點。


      圖1為一個表示使用一種文件處理方法的實施例的計算機系統(tǒng)的一般結(jié)構(gòu)的系統(tǒng)框圖;圖2為一個用于說明由CPU執(zhí)行的壓縮參數(shù)計算處理的流程圖;圖3為一個表示壓縮參數(shù)的數(shù)據(jù)結(jié)構(gòu)的框圖;圖4為一個用于說明由CPU執(zhí)行的數(shù)據(jù)壓縮處理和地址信息計算處理的流程圖;圖5為一個用于說明由CPU執(zhí)行的壓縮文件編制處理和壓縮文件存儲處理的流程圖;圖6為一個說明壓縮文件的組成的框圖;圖7為一個用于說明由CPU執(zhí)行的索引讀取處理的流程圖;圖8為一個用于說明由CPU執(zhí)行的數(shù)據(jù)擴展處理;和圖9為一個用于說明由CPU執(zhí)行的文本讀取處理的流程圖。
      具體實施例方式
      下面將描述根據(jù)本發(fā)明的一種文件處理方法的實施例和一種根據(jù)本發(fā)明的數(shù)據(jù)處理裝置的實施例。這種文件處理方法的實施例和數(shù)據(jù)處理裝置的實施例都使用了根據(jù)本發(fā)明的一種存儲介質(zhì)的實施例。在存儲介質(zhì)的實施例中,本發(fā)明應(yīng)用于CD-ROM。然而,除了CD-ROM,本發(fā)明也適用于光信息存儲介質(zhì),磁光存儲介質(zhì)例如磁光盤,磁性存儲介質(zhì)例如軟盤,和多種半導(dǎo)體存儲器件。
      圖1為一個系統(tǒng)框圖,表示應(yīng)用這種文件處理方法的實施例的計算機系統(tǒng)的一般結(jié)構(gòu),并且圖1適用于數(shù)據(jù)處理裝置的實施例。圖1中所示的計算機系統(tǒng)一般包括一個中央處理器(CPU)1,一個由隨機訪問存儲器(RAM)等組成的主存單元2,一個由硬盤驅(qū)動器等組成的輔助存儲單元,一個由鍵盤,鼠標等組成的輸入設(shè)備4,一個顯示單元5,和一個由CD-ROM驅(qū)動器等組成的CD-ROM輸入/輸出設(shè)備,這些組成部分通過總線9相互耦合。構(gòu)成計算機系統(tǒng)的每一部分均可看作具有已知結(jié)構(gòu)。
      輸入設(shè)備4用于把指令和數(shù)據(jù)輸入到CPU 1。CPU 1根據(jù)所輸入的指令和數(shù)據(jù)通過執(zhí)行存儲在輔助存儲單元3中的程序來實現(xiàn)用戶所要求的處理。存儲在輔助存儲單元3中的程序可能是預(yù)先安裝的,或者是從CD-ROM 6a中裝載的,其中CD-ROM 6a被裝入到CD-ROM輸入/輸出設(shè)備6中。主存單元2用于暫時地存儲由CPU 1執(zhí)行的計算處理的中間結(jié)果等,操作所使用的數(shù)據(jù)等。顯示單元5用于顯示由CPU 1所執(zhí)行的處理的結(jié)果,顯示一條催促用戶輸入指令或數(shù)據(jù)的信息。也可以連接一個打印機(圖中未示出)來替代顯示單元5,或除了顯示單元5外再連接一個打印機,其中打印機用于打印由CPU 1等執(zhí)行的處理的結(jié)果。
      首先,將描述用于把詞典,百科全書等的詞典文件存儲在CD-ROM6a中的文件存儲處理,其中CD-ROM 6a被裝入到CD-ROM輸入/輸出設(shè)備6。文件存儲處理一般包括一個壓縮參數(shù)計算處理,一個用于對索引,文本等進行壓縮的數(shù)據(jù)壓縮處理,一個地址信息計算處理,一個壓縮文件編制處理和一個壓縮文件存儲處理。在該實施例中,為方便起見假設(shè)使得CPU 1執(zhí)行文件存儲處理的程序存儲在CD-ROM 6a中,并且CPU 1使用一種已知的方法從CD-ROM 6a中讀取該程序,并把該程序讀到輔助存儲單元3。另外,為方便起見假設(shè)有關(guān)于詞典,百科全書等的詞典文件是從主機單元(圖中未示出)傳送過來并且通過總線9存儲在輔助存儲單元3中的,或者是通過CD-ROM輸入/輸出設(shè)備6從不同于CD-ROM 6a的其他CD-ROM中讀取并通過總線9存儲在輔助存儲單元中的。
      1a)壓縮參數(shù)計算處理圖2為一個流程圖,用于說明由CPU 1執(zhí)行的壓縮參數(shù)計算處理。圖2中,步驟S1訪問輔助存儲單元3并打開一個詞典文件。步驟S2讀取一個字符,也即一個16位代碼,例如從該詞典文件中讀取。步驟S3通過使用CPU 1中的一個出現(xiàn)頻率計數(shù)器來計算所讀取的16位代碼的出現(xiàn)頻率。步驟S4判定是否已處理了該詞典文件的最后一個字符,如果步驟S4中的判定結(jié)果是否,則處理返回步驟S2。
      另一方面,如果步驟S4中的判定結(jié)果是是,則步驟S5關(guān)閉這一詞典文件。步驟S6根據(jù)各字符的出現(xiàn)頻率對16位代碼進行排序,并且步驟S7選擇出1024個16位代碼,例如,根據(jù)出現(xiàn)頻率進行選擇。步驟S8把余下未被選中的16位代碼分解成8位代碼,并計算出這些8位代碼的出現(xiàn)頻率。步驟S9根據(jù)16位代碼的出現(xiàn)頻率,通過把8位代碼的出現(xiàn)頻率設(shè)置為大概為16位代碼的出現(xiàn)頻率的一半來校正8位代碼的出現(xiàn)頻率。
      步驟S10打開輔助存儲單元3中的一個用于壓縮參數(shù)的壓縮參數(shù)保存文件。步驟S11把1024個16位代碼及其各自的出現(xiàn)頻率寫入該壓縮參數(shù)保存文件。另外,步驟S12把256個8位代碼及其各自的出現(xiàn)頻率寫入該壓縮參數(shù)保存文件。步驟S13關(guān)閉該壓縮參數(shù)保存文件,然后處理結(jié)束。
      圖3為一個表示壓縮參數(shù)的數(shù)據(jù)結(jié)構(gòu)的框圖。例如,如圖3所示,在使用哈夫曼編碼進行壓縮的情況下,所選中的1024個16位代碼均有256種出現(xiàn)頻率,對于所選中的8位代碼也均有256種出現(xiàn)頻率。這些出現(xiàn)頻率成為用于生成哈夫曼樹的數(shù)據(jù)。在使用通用代碼進行壓縮的情況下,壓縮參數(shù)包括一個重試樹或數(shù)據(jù)例如用于生成重試樹的注冊符號例子及其參數(shù)。
      1b)數(shù)據(jù)壓縮處理和地址信息計算處理圖4為一流程圖,用于說明由CPU 1執(zhí)行的數(shù)據(jù)壓縮處理和地址信息計算處理。圖4中,步驟S21根據(jù)8位和16位代碼的出現(xiàn)頻率創(chuàng)建一個轉(zhuǎn)換表,由于本實施例實行哈夫曼壓縮,也即,創(chuàng)建一棵哈夫曼樹。步驟S22打開一個輔助存儲單元3中的詞典文件。步驟S23打開輔助存儲單元3中的一個用于壓縮數(shù)據(jù)的壓縮數(shù)據(jù)保存文件和一個用于地址信息的地址信息保存文件。
      步驟S24從該詞典文件中讀取1部分。該部分可能為定長或變長,但在該實施例中,為方便起見假設(shè)該部分為定長。有時該部分指一塊。步驟S25使用哈夫曼樹來計算1部分的壓縮數(shù)據(jù)。步驟S26把一個結(jié)束代碼添加到1部分的末尾。另外,步驟S27把壓縮數(shù)據(jù)寫入壓縮數(shù)據(jù)保存文件。
      步驟S28計算有關(guān)于地址的地址信息,其中地址中存儲有上述1部分。例如,當(dāng)上述1部分具有定長時,則根據(jù)分配給每個部分的部分編號來計算地址信息。步驟S29把地址信息寫入地址信息保存文件。步驟S30判定是否處理了最后一部分,如果該步驟S30的判定結(jié)果是否,則處理返回到步驟S24。例如,有可能根據(jù)添加到部分編號上或最后一部分上的最后部分代碼來判定是否已處理了最后一部分。
      另一方面,如果步驟S30的判定結(jié)果是是,則步驟S31關(guān)閉用于壓縮數(shù)據(jù)的保存文件,并且關(guān)閉地址信息保存文件。另外,步驟S32關(guān)閉詞典文件,然后處理結(jié)束。
      1c)壓縮文件編制處理和壓縮文件存儲處理圖5為一個流程圖,用于說明由CPU 1所執(zhí)行的壓縮文件編制處理和壓縮文件存儲處理。圖5中,步驟S41打開一個輔助存儲單元3中的壓縮文件。步驟S42打開一個輔助存儲單元中的壓縮參數(shù)保存文件,并且步驟S43把壓縮參數(shù)保存文件中的壓縮參數(shù)復(fù)制到壓縮文件中。步驟S44關(guān)閉壓縮參數(shù)保存文件。
      步驟S45打開一個輔助存儲單元3中的地址信息保存文件,并且步驟S46把地址信息保存文件中的地址信息復(fù)制到壓縮文件中。步驟S47關(guān)閉地址信息保存文件。而且,步驟S48打開一個輔助存儲單元3中的壓縮數(shù)據(jù)保存文件,步驟S49把壓縮數(shù)據(jù)保存文件中的壓縮數(shù)據(jù)復(fù)制到壓縮文件中。步驟S50關(guān)閉壓縮數(shù)據(jù)保存文件。步驟S51通過CD-ROM輸入/輸出設(shè)備6把壓縮文件存儲到CD-ROM 6a中。另外,步驟S52關(guān)閉壓縮文件,然后結(jié)束處理。
      圖6為一個框圖,用于根據(jù)上述1a)壓縮參數(shù)計算處理1b)數(shù)據(jù)壓縮處理和地址信息計算處理1c)壓縮文件編制處理和壓縮文件存儲處理來說明壓縮文件的編制。圖6中(a)表示壓縮參數(shù)。在該實施例中,壓縮參數(shù)用于使用哈夫曼編碼進行壓縮。圖6中,(b)表示詞典文件的各部分。例如該實施例中,每一部分均由2K字節(jié)構(gòu)成,且每一部分均由詞典數(shù)據(jù)和索引數(shù)據(jù)組成。例如,在百科全書的情況下,詞典數(shù)據(jù)包括有關(guān)于文本的文本數(shù)據(jù),有關(guān)于圖象的圖象數(shù)據(jù),有關(guān)于聲音的聲音數(shù)據(jù)等,其中文本用于解釋單詞的意思,如果單詞描述的是一個動物,則圖象用于表示這種動物,如果單詞表示的是一個小鳥,則聲音用于表示這種小鳥的叫聲。另一方面,索引用于從詞典文件中檢索所需要的詞典數(shù)據(jù),并且根據(jù)詞典數(shù)據(jù)來安排索引。索引數(shù)據(jù)包括有關(guān)于標題的指針,有關(guān)于項的指針等。有關(guān)于標題的數(shù)據(jù)包括一個中心詞,注釋等。
      圖6中,(c)表示壓縮數(shù)據(jù),其中每一部分均為定長或變長,且已被壓縮。而且,圖6中,(d)表示根據(jù)每一部分所計算出的地址信息,并且(e)表示壓縮文件,其中壓縮文件是通過對地址信息和壓縮數(shù)據(jù)進行編制并在壓縮文件的頭部添加管理信息后得到的。管理信息包括檢索壓縮文件時所用到的信息,例如詞典文件名,詞典文件類型,對詞典文件所用的壓縮類型。
      接下來,將描述文件檢索處理,這種文件檢索處理通過讀取存儲在CD-ROM 6a中的壓縮文件來檢索所需要的數(shù)據(jù),其中CD-ROM 6a被裝入在CD-ROM輸入/輸出設(shè)備6中。文件檢索處理一般包括一個索引讀取處理和一個文本讀取處理,并且文件索引處理是通過調(diào)用一個數(shù)據(jù)擴展處理來實現(xiàn)的。在該實施例中,為方便起見假設(shè)使得CPU 1執(zhí)行文件檢索處理的程序存儲在CD-ROM 6a中,并且CPU 1通過已知方法從CD-ROM 6a中讀取該程序和壓縮文件,并把所讀取的程序和壓縮文件送到輔助存儲單元3。
      2a)索引讀取處理圖7為一流程圖,用于說明由CPU 1執(zhí)行的索引讀取處理。在圖7中,步驟S61根據(jù)用戶通過輸入設(shè)備4所輸入的索引數(shù)據(jù),設(shè)置最重要索引的地址信息。步驟S62調(diào)用擴展處理,并從存儲在輔助存儲單元3中的程序中讀取一個例程以執(zhí)行擴展處理,并且步驟S62使得CPU 1執(zhí)行文件檢索處理,以對壓縮文件中最重要索引的地址進行擴展。步驟S63根據(jù)索引數(shù)據(jù)獲得重要索引的地址,也即,最重要索引的頭字符。步驟S64調(diào)用擴展處理,并對壓縮文件中重要索引的地址進行擴展。步驟S65根據(jù)索引數(shù)據(jù)獲得下一層中次重要索引的地址。步驟S66調(diào)用擴展處理,并將位于壓縮文件中的上述下一層的不太重要索引的地址進行擴展。步驟S67判定是否已對最不重要的索引的地址進行了擴展,如果步驟S67中的判定結(jié)果是否,則處理返回到步驟S67。另一方面,如果如果步驟S67中的判定結(jié)果是是,則該處理結(jié)束。
      2b)數(shù)據(jù)擴展處理圖8為一個流程圖,用于說明由CPU 1執(zhí)行的數(shù)據(jù)擴展處理。數(shù)據(jù)擴展處理由索引讀取處理和文本讀取處理所調(diào)用。在圖8中,步驟S71根據(jù)用戶通過輸入設(shè)備4所輸入的索引數(shù)據(jù)把所請求的擴展地址,數(shù)據(jù)大小和存儲區(qū)域存儲到輔助存儲單元3中,以根據(jù)擴展后數(shù)據(jù)大小在輔助存儲單元3中預(yù)備一個足夠大的存儲區(qū)域。步驟S72判定從CD-ROM6a中讀取并且送到輔助存儲單元3中的壓縮文件是否已打開。如果步驟S72中的判定結(jié)果是否,則步驟S73打開輔助存儲單元3中的壓縮文件。步驟S74從壓縮文件中讀取壓縮參數(shù),并且讀取壓縮參數(shù)中的8位代碼的出現(xiàn)頻率,壓縮參數(shù)中的16位代碼及其16位代碼的出現(xiàn)頻率。步驟S75根據(jù)8位代碼的出現(xiàn)頻率和16位代碼的出現(xiàn)頻率創(chuàng)建哈夫曼樹,然后處理進行到后面將描述到的步驟S76。用于判定代碼是8位代碼還是16位代碼的判定標識被添加到哈夫曼樹的葉節(jié)點的數(shù)據(jù)上。
      如果步驟S72中的判定結(jié)果是是或在步驟S75后,步驟S76從壓縮文件中讀取相應(yīng)于所請求的擴展地址的地址信息。步驟S77根據(jù)地址信息,從壓縮文件中讀取相應(yīng)的壓縮數(shù)據(jù)的部分。步驟S78通過使用哈夫曼樹來對壓縮數(shù)據(jù)的部分進行擴展。步驟S79根據(jù)判定標識把擴展數(shù)據(jù)復(fù)制到上述存儲區(qū)域,其中判定標識表示代碼是8位代碼還是16位代碼。而且,步驟S80根據(jù)壓縮文件判定是否完成了所請求數(shù)據(jù)大小的擴展。
      如果步驟S80中的判定結(jié)果是否,則步驟S81從壓縮文件讀取相應(yīng)于下一部分的擴展地址的地址信息。步驟S82根據(jù)相應(yīng)于下一部分的擴展地址的地址信息,從壓縮文件中讀取相應(yīng)的壓縮數(shù)據(jù)的部分,然后處理返回到步驟S78。另一方面,如果步驟S80中的判定結(jié)果是是,則處理結(jié)束。
      2c)文本讀取處理圖9為一流程圖,用于說明由CPU 1所執(zhí)行的文本讀取處理。圖9中,步驟S91根據(jù)用戶通過輸入設(shè)備4所輸入的索引數(shù)據(jù),計算擴展數(shù)據(jù)中與索引相匹配的項數(shù)。步驟S92根據(jù)所輸入的索引數(shù)據(jù)把索引的項指針的值指向地址。步驟S93調(diào)用擴展處理,并從存儲在輔助存儲單元3中的程序中讀取一個例程以執(zhí)行擴展處理,并使得CPU 1執(zhí)行文件檢索處理,以對壓縮文件中由項指針所指示的文本進行擴展,也即,對1部分的詞典數(shù)據(jù)進行擴展。
      步驟S94判斷進項指針所表示的詞典數(shù)據(jù)是否已經(jīng)結(jié)束。如果步驟S94中的判定結(jié)果是否,則步驟S95設(shè)置下個1部分的地址。另外,步驟S96調(diào)用擴展處理,并對由壓縮文件中的項指針所指示的下個1部分中的詞典數(shù)據(jù)進行擴展,然后處理返回到步驟S94。另一方面,如果步驟S94中的判定結(jié)果是是,則步驟S97根據(jù)所輸入的索引數(shù)據(jù)判定是否對于所有項的處理均結(jié)束了。如果步驟S97中的判定結(jié)果是否,則處理返回到步驟S92。另一方面,如果步驟S97中的判定結(jié)果是是,則步驟S98把擴展后詞典數(shù)據(jù)顯示在顯示單元5上,其中詞典數(shù)據(jù)的所有項均得到了擴展,然后處理結(jié)束。
      可以在步驟S97之前執(zhí)行步驟S98。在這種情況下,每當(dāng)對各項進行擴展后,步驟S98就把擴展后的詞典數(shù)據(jù)顯示在顯示單元5上。
      在上述實施例中,為方便起見假設(shè)每一部分均為定長。在這種情況下,數(shù)據(jù)壓縮的效率是令人滿意的,并且可以從壓縮文件中恢復(fù)地址信息,而不必把地址信息存儲在壓縮文件中該部分的壓縮數(shù)據(jù)之前。這是由于部分具有定長,并且對每一部分均添加了部分編號,因此可以計算出每一部分關(guān)于其他部分的相對位置。
      另一方面,當(dāng)部分具有變長時,則可以提高數(shù)據(jù)擴展速度。這是由于可根據(jù)數(shù)據(jù)和部分的類型來適當(dāng)?shù)卦O(shè)置部分的長度,從而不需對附加數(shù)據(jù)進行擴展。在部分具有變長的情況下,在壓縮文件中需要把地址存儲在該部分的壓縮數(shù)據(jù)之前。相應(yīng)地,可以根據(jù)是要提高數(shù)據(jù)壓縮效率還是要提高數(shù)據(jù)擴展的速度,從而決定把部分設(shè)置成定長還是變長。
      另外,CD-ROM 6a中可存儲一個或多個詞典文件。當(dāng)CD-ROM 6a中存儲有有關(guān)于多個詞典,百科全書等的多個詞典文件時,可以通過使用圖6中的管理信息(e)中的詞典文件名或詞典文件類型來指定所要檢索的詞典。
      而且,雖然上述實施例中使用了哈夫曼編碼進行數(shù)據(jù)壓縮,但是除了哈夫曼編碼技術(shù),還可使用其他的編碼技術(shù),例如統(tǒng)一編碼技術(shù),只要所用的數(shù)據(jù)壓縮技術(shù)能夠通過使用每一部分所共同的壓縮參數(shù)對詞典數(shù)據(jù)有效地進行壓縮。另外,進行壓縮和擴展的數(shù)據(jù)并不僅限于詞典數(shù)據(jù),還可包括包括索引和數(shù)據(jù)的數(shù)據(jù)庫數(shù)據(jù)。
      而且,上述實施例中,文件檢索處理是通過把用于執(zhí)行文件檢索處理的程序和壓縮文件復(fù)制到輔助存儲單元3中實現(xiàn)的。然而,除了把程序和壓縮文件復(fù)制到輔助存儲單元3中外,還可以在主存單元2中展開程序和壓縮文件,并執(zhí)行類似于上述處理的處理。
      通過使用上述實施例中的壓縮算法,與使用8位哈夫曼編碼的一般的數(shù)據(jù)壓縮處理相比可提高數(shù)據(jù)壓縮效率。結(jié)果是,可以減少存儲在存儲介質(zhì)例如CD-ROM和用做輔助存儲單元的硬盤中的壓縮文件的區(qū)域。通過使用這種壓縮算法,雖然可以提高數(shù)據(jù)壓縮的效率,但是對壓縮文件進行擴展所需要的處理時間與使用哈夫曼編碼的普通數(shù)據(jù)壓縮處理對壓縮文件進行擴展所需要的處理時間相比并沒有太大的改變。
      實現(xiàn)數(shù)據(jù)檢索處理所需要的時間由讀取單元(驅(qū)動器)的搜索時間,讀取壓縮文件所需的讀取時間,執(zhí)行擴展處理所需的時間構(gòu)成。
      由于通過使用上述壓縮算法可提高數(shù)據(jù)壓縮效率,因此存儲在存儲介質(zhì)中的壓縮文件所減少的區(qū)域可減少文件檢索處理的所需要的搜索時間。因此提高了文件檢索速度。當(dāng)硬件性能提高時,則文件檢索速度提高所造成的效果會更顯著。
      而且,本發(fā)明并不僅限于這些實施例,但是可對此做出不同的修改和變更,而不背離本發(fā)明的范圍。
      權(quán)利要求
      1.一種文件處理方法,包括一個讀取步驟,該步驟從存儲介質(zhì)中讀取壓縮文件和壓縮后各部分的地址信息,對于每一部分來講,所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并分別對各部分進行壓縮后得到的;和一個恢復(fù)步驟,該步驟對壓縮文件進行擴展并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。
      2.如權(quán)利要求1所示的文件處理方法,該方法還包括一個用于把恢復(fù)后的數(shù)據(jù)和索引數(shù)據(jù)存儲在一個輔助存儲單元中的步驟。
      3.如權(quán)利要求1或2所述的文件處理方法,其中所述恢復(fù)步驟根據(jù)轉(zhuǎn)換表來實現(xiàn)數(shù)據(jù)擴展,其中該轉(zhuǎn)換表是在壓縮期間獲得的,其中轉(zhuǎn)換表是通過根據(jù)第一位代碼的出現(xiàn)頻率在數(shù)據(jù)中選擇預(yù)定數(shù)目的第一位代碼,把余下的未被選中的第一位代碼分解成第二位代碼,然后根據(jù)對第二位代碼進行的選擇而創(chuàng)建的,其中第二位代碼的選擇是根據(jù)第二位代碼的出現(xiàn)頻率來進行的。
      4.如權(quán)利要求1-3的任一項所述的文件處理方法,其中每個部分均具有定長。
      5.如權(quán)利要求1-3的任一項所述的文件處理方法,其中每個部分均具有變長,并且壓縮之前的地址信息被存儲在存儲介質(zhì)中。
      6.如權(quán)利要求1-5的任一項所述的文件處理方法,其中數(shù)據(jù)包括詞典數(shù)據(jù)。
      7.一種數(shù)據(jù)處理裝置,包括一個讀取裝置,用于從存儲介質(zhì)中讀取壓縮文件和壓縮后各部分的地址信息,對于每一部分,所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并對各部分進行壓縮后得到的;和一個恢復(fù)裝置,用于對壓縮文件進行擴展并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。
      8.如權(quán)利要求7所述的數(shù)據(jù)處理裝置,該裝置還包括用于把所恢復(fù)的數(shù)據(jù)和索引數(shù)據(jù)存儲在一個輔助存儲單元中的裝置。
      9.如權(quán)利要求7或8所述的數(shù)據(jù)處理裝置,其中所述恢復(fù)裝置根據(jù)轉(zhuǎn)換表來實現(xiàn)數(shù)據(jù)擴展,其中該轉(zhuǎn)換表是在壓縮時通過根據(jù)第一位代碼的出現(xiàn)頻率在數(shù)據(jù)中選擇預(yù)定數(shù)目的第一位代碼,把余下的未被選中的第一位代碼分解成第二位代碼,然后根據(jù)第二位代碼的出現(xiàn)頻率對第二位代碼的選擇結(jié)果創(chuàng)建的。
      10.如權(quán)利要求7-9的任一項所述的數(shù)據(jù)處理裝置,其中每一部分均具有定長。
      11.如權(quán)利要求7-9的任一項所述的數(shù)據(jù)處理裝置,其中每一部分均具有變長,并且把壓縮之前的地址信息存儲在存儲介質(zhì)中。
      12.如權(quán)利要求7-11的任一項所述的數(shù)據(jù)處理裝置,其中數(shù)據(jù)包括詞典數(shù)據(jù)。
      13.一種用于存儲計算機可讀信息的存儲介質(zhì),包括讀取裝置,用于使得計算機從存儲介質(zhì)中讀取壓縮文件和壓縮后各部分的地址信息,對于每一部分來講,所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并對各部分進行壓縮后得到的;和恢復(fù)裝置,用于使得計算機對壓縮文件進行擴展并恢復(fù)數(shù)據(jù)和索引數(shù)據(jù)。
      14.如權(quán)利要求13中所述的存儲介質(zhì),該介質(zhì)還包括用于使得計算機把所恢復(fù)的數(shù)據(jù)和索引數(shù)據(jù)存儲在一個輔助存儲單元中的裝置。
      15.如權(quán)利要求13或14所述的存儲介質(zhì),其中每部分均具有定長。
      16.如權(quán)利要求13或14所述的存儲介質(zhì),其中每部分均具有變長,并且所述讀取裝置還使得計算機從存儲介質(zhì)中讀取壓縮之前的地址信息。
      17.如權(quán)利要求13-16的任一項所述的存儲介質(zhì),其中壓縮文件是使用了各部分的數(shù)據(jù)和索引數(shù)據(jù)所共同的壓縮算法和壓縮參數(shù)進行壓縮的。
      18.如權(quán)利要求13-17的任一項所述的存儲介質(zhì),其中數(shù)據(jù)包括詞典數(shù)據(jù)。
      19.一種用于存儲計算機可讀信息的存儲介質(zhì),包括與壓縮后各部分的地址信息存儲在一起的壓縮文件,對于每一部分來講,所述壓縮文件是把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并對各部分進行壓縮后得到的,所述壓縮文件是使用了各部分的數(shù)據(jù)和索引數(shù)據(jù)所共同的壓縮算法和壓縮參數(shù)進行壓縮的。
      20.如權(quán)利要求19所書的存儲介質(zhì),其中每一部分均具有定長。
      21.如權(quán)利要求19所書的存儲介質(zhì),其中每一部分均具有變長,并且還存儲壓縮之前的地址信息。
      22.如權(quán)利要求19-21的任一項所述的存儲介質(zhì),其中數(shù)據(jù)包括詞典數(shù)據(jù)。
      23.一種用于存儲計算機可讀信息的存儲介質(zhì),包括程序,其中程序使得計算機執(zhí)行一個壓縮程序,用于把詞典數(shù)據(jù)和關(guān)于該詞典數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并對各個部分進行壓縮以獲得壓縮的詞典文件;和一個存儲程序,用于把壓縮的詞典數(shù)據(jù)與壓縮后各部分的地址信息存儲在存儲介質(zhì)中。
      24.如權(quán)利要求23所述的存儲介質(zhì),其中每一部分均具有定長。
      25.如權(quán)利要求23所述的存儲介質(zhì),其中每一部分均具有變長,并且所述存儲程序還把壓縮之前的地址信息存儲在存儲介質(zhì)中。
      26.如權(quán)利要求23-25的任一項所述的存儲介質(zhì)中,其中壓縮的詞典文件是通過使用各部分的詞典數(shù)據(jù)和索引數(shù)據(jù)所共同的壓縮算法和壓縮參數(shù)進行壓縮的。
      27.如權(quán)利要求23-26的任一項所述的存儲介質(zhì)中,該存儲介質(zhì)還存儲有一個程序,該程序使得計算機執(zhí)行一個用于從存儲介質(zhì)中讀取壓縮的詞典文件的每一部分,并對所讀取的壓縮的詞典文件進行擴展,從而恢復(fù)詞典數(shù)據(jù)和索引數(shù)據(jù)的程序。
      28.如權(quán)利要求27中所述的存儲介質(zhì),該存儲介質(zhì)還存儲有一個程序,該程序使得計算機執(zhí)行一個用于把所恢復(fù)的詞典數(shù)據(jù)和索引數(shù)據(jù)存儲到輔助存儲單元中的程序。
      29.如權(quán)利要求23所述的存儲介質(zhì),該存儲介質(zhì)還存儲有一個程序,該程序使得計算機執(zhí)行一個程序,該程序用于根據(jù)第一位代碼的出現(xiàn)頻率在數(shù)據(jù)中選擇預(yù)定數(shù)目的第一位代碼,把余下的未被選中的第一位代碼分解成第二位代碼,根據(jù)對第二位代碼進行的選擇創(chuàng)建轉(zhuǎn)換表,其中第二位代碼的選擇是根據(jù)第二位代碼的出現(xiàn)頻率進行的,并且根據(jù)轉(zhuǎn)換表實現(xiàn)數(shù)據(jù)壓縮。
      30.一種存儲壓縮文件的計算機可讀存儲介質(zhì),包括一個壓縮數(shù)據(jù)區(qū)域,用于存儲通過把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分并對各個部分進行壓縮后所獲得的壓縮數(shù)據(jù);一個地址信息區(qū)域,用于存儲各部分壓縮后的地址信息;和一個壓縮參數(shù)區(qū)域,用于存儲壓縮時所用到的壓縮參數(shù)。
      31.如權(quán)利要求30所述的計算機可讀存儲介質(zhì),其中所述壓縮參數(shù)包括預(yù)定數(shù)目的第一位代碼和第二位代碼,其中預(yù)定數(shù)目的第一位代碼是根據(jù)第一位代碼的出現(xiàn)頻率的順序和第一位代碼的出現(xiàn)頻率在數(shù)據(jù)中選擇,其中第二位代碼是對余下的未被選中的第一位代碼進行分解后并根據(jù)第二位代碼的出現(xiàn)頻率的順序和第二位代碼的出現(xiàn)頻率所獲得的。
      全文摘要
      一種文件處理方法,一種數(shù)據(jù)處理裝置和一種存儲介質(zhì),把數(shù)據(jù)和關(guān)于該數(shù)據(jù)的索引數(shù)據(jù)劃分成多個部分,并對各部分進行壓縮以獲得壓縮文件,并把壓縮文件和壓縮后各部分的地址信息存儲在存儲介質(zhì)中。
      文檔編號G06F3/06GK1487448SQ0310677
      公開日2004年4月7日 申請日期1998年10月20日 優(yōu)先權(quán)日1997年10月21日
      發(fā)明者片岡正弘, 坪倉孝 申請人:富士通株式會社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1