最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

中文網(wǎng)頁數(shù)據(jù)編碼、解碼方法及系統(tǒng)的制作方法

文檔序號:6377725閱讀:147來源:國知局
專利名稱:中文網(wǎng)頁數(shù)據(jù)編碼、解碼方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及移動通信領(lǐng)域,更為具體地,涉及一種中文網(wǎng)頁數(shù)據(jù)編碼方法及裝置,一種具有該中文網(wǎng)頁數(shù)據(jù)編碼裝置的服務(wù)器,一種中文網(wǎng)頁數(shù)據(jù)解碼方法及裝置,以及一種具有該中文網(wǎng)頁數(shù)據(jù)解碼方法的移動終端。
背景技術(shù)
為了節(jié)省用戶上網(wǎng)流量,在將網(wǎng)頁內(nèi)容從服務(wù)器傳輸?shù)揭苿咏K端的瀏覽器客戶端時,瀏覽器后臺服務(wù)器會在網(wǎng)頁傳輸前對網(wǎng)頁進行壓縮。當前服務(wù)器采用的通常是以Lz77為基礎(chǔ)的壓縮算法,比如Lz77壓縮算法、Lzma壓縮算法等,這些算法采用gzip、7zip等壓縮格式。網(wǎng)頁http://en. wikipedia. org/wiki/LZ77示出了 Lz77壓縮算法的相關(guān)描述。網(wǎng)頁 http://en.wikiDedia.org/wiki/LemDel-Ziv-Markov chain algorithm 不出了 Lzma壓縮算法的相關(guān)描述。在此將這些網(wǎng)頁公開的內(nèi)容通過引用的方式并入本申請中。 上述壓縮算法的基本原理是在文本中尋找重復的字符串,建立一個重復字串的“詞典”文件,并在輸出中用詞典的索引代替該字符串。詞典無需與字符串編碼一起傳輸,解壓縮裝置能夠根據(jù)算法的逆過程重建原始字符串。圖I示出了 LZW的壓縮算法的流程圖。如圖I所示,首先,初始化詞典包含所有長度為I的字符串(步驟S110)。接著,找出與當前輸入匹配的詞典中最長字符串W (步驟S120)。然后,在輸出中將W替換為詞典索弓I,同時在輸入中刪除W (步驟S130),并且將W連同輸入中的位于W之后的后續(xù)字符加入詞典(步驟S140),然后回到步驟S120,重復執(zhí)行上述處理,直到輸入中包含的字符為空。LZW算法對語言透明,由于該算法是在字節(jié)級別定義重復模式,因此它可以有效地應用于中文網(wǎng)頁的壓縮,但同時也因此不能有效利用語言本身的特性,比如中文從語義上講其實是由一個個相對固定的‘詞’組成的,但該算法不會考慮中文的這個特性。從壓縮方法上講,該壓縮算法依賴于文本中的重復模式,如果某文本中不存在重復模式或者字符串重復較少,則該算法會失效或者壓縮效率不高。同時,由于重復模式是在掃描文本的過程中逐漸識別,初步只能識別較短的模式,逐步才能識別較長的重復模式,這意味著文檔的初始部分壓縮率很低,這就對較短長度的網(wǎng)頁壓縮不利。根據(jù)對新聞類網(wǎng)頁的初步統(tǒng)計,中文網(wǎng)頁中的正文內(nèi)容的壓縮率在60、0%之間(壓縮率越小表示壓縮越好),壓縮效果明顯不及由英文組成的js文件、css文件、html標簽等。

發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明的一個目的是提供一種中文網(wǎng)頁數(shù)據(jù)編碼方法及裝置,該方法及裝置利用為預先設(shè)置的詞庫中的每個詞分配的Unicode碼位空間的私有空間或保留空間中的Unicode碼位,對中文網(wǎng)頁內(nèi)容進行編碼,從而提高中文網(wǎng)頁數(shù)據(jù)的壓縮效率。本發(fā)明的另一目的在提供一種具有上述中文網(wǎng)頁數(shù)據(jù)編碼裝置的中間服務(wù)器。本發(fā)明的另一目的在于提供一種中文網(wǎng)頁數(shù)據(jù)解碼方法及裝置,該方法及裝置能夠?qū)θ缟暇幋a的Unicode流進行解碼,以恢復原始中文網(wǎng)頁數(shù)據(jù)。本發(fā)明的另一目的在于提供一種具有上述中文網(wǎng)頁數(shù)據(jù)解碼裝置的移動終端。根據(jù)本發(fā)明的一個方面,提供了一種中文網(wǎng)頁數(shù)據(jù)編碼方法,包括從所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,重復執(zhí)行下述過程,直到該所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換成Unicode編碼為止從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的 分詞;在存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在不存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符;以及從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù)。在上述方面的一個或多個示例中,所述詞庫中的每個詞被預先分配Unicode碼位空間中的私有空間或保留空間中的一個Unicode編碼在上述方面的一個或多個示例中,所確定出的與詞庫中的詞匹配的以當前處理的中文網(wǎng)頁數(shù)據(jù)中的第一個字符開始的分詞是以該第一個字符開始的能夠與詞庫中的詞匹配的最長分詞。在上述方面的一個或多個示例中,所述詞庫中的詞按照詞頻進行排列,并且按照排列順序為所述詞分配Unicode編碼,其中,所述詞優(yōu)先分配所述私有空間中的Unicode編碼,以及在所述私有空間中的Unicode編碼被全部分配后,分配所述保留空間中的Unicode編碼。在上述方面的一個或多個示例中,所述私有空間包括一個位于基本平面的私有空間以及兩個位于補充平面的私有空間,位于基本平面的私有空間的Unicode編碼占用三個字節(jié),以及位于補充平面的私有空間的Unicode編碼占用四個字節(jié),所述詞優(yōu)先分配位于基本平面的私有空間中的Unicode編碼,以及只有在所述位于基本平面的私有空間的Unicode編碼被全部分配后,才分配所述位于補充平面的私有空間中的Unicode編碼。在上述方面的一個或多個示例中,所述保留空間中的Unicode編碼按照從后至前的順序分配。在上述方面的一個或多個示例中,所述中文網(wǎng)頁數(shù)據(jù)采用UTF-8格式傳輸。根據(jù)本發(fā)明的另一方面,提供了一種中文網(wǎng)頁數(shù)據(jù)編碼裝置,包括分詞處理單元,用于從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞;編碼單元,用于在存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在不存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符;以及當前處理數(shù)據(jù)更新單元,用于從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù),其中,從所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,重復執(zhí)行所述分詞處理單元、編碼單元和當前處理數(shù)據(jù)更新單元的處理過程,直到該所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換成Unicode編碼為止。根據(jù)本發(fā)明的另一方面,提供了一種中間服務(wù)器,包括如上所述的中文網(wǎng)頁數(shù)據(jù)
編碼裝置。根據(jù)本發(fā)明的另一方面,提供了一種中文網(wǎng)頁數(shù)據(jù)解碼方法,包括從中間服務(wù)器接收按照如上所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流;以及根據(jù)移動終端中預先設(shè)置的詞庫,將所接收的Unicode編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù),所述移動終端中預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。根據(jù)本發(fā)明的另一方面,提供了一種中文網(wǎng)頁數(shù)據(jù)解碼裝置,包括接收單元,用于從中間服務(wù)器接收按照如上所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流;以及解碼單元,用于根據(jù)中文網(wǎng)頁數(shù)據(jù)解碼裝置中的預先設(shè)置的詞庫,將所接收的Unicode 編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù),所述中文網(wǎng)頁數(shù)據(jù)解碼裝置中的預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。根據(jù)本發(fā)明的另一方面,一種移動終端,包括如上所述的中文網(wǎng)頁數(shù)據(jù)解碼裝置。根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼方法,可以利用預先設(shè)置的一個詞庫,使用為詞庫中的每個詞分配的Unicode碼位空間的私有空間或保留空間中的Unicode碼位,對中文網(wǎng)頁內(nèi)容進行編碼,從而節(jié)省編碼后的數(shù)據(jù)流所占用的空間,由此減少中文網(wǎng)頁數(shù)據(jù)的存儲空間以及數(shù)據(jù)傳輸流量。為了實現(xiàn)上述以及相關(guān)目的,本發(fā)明的一個或多個方面包括后面將詳細說明并在權(quán)利要求中特別指出的特征。下面的說明以及附圖詳細說明了本發(fā)明的某些示例性方面。然而,這些方面指示的僅僅是可使用本發(fā)明的原理的各種方式中的一些方式。此外,本發(fā)明旨在包括所有這些方面以及它們的等同物。


根據(jù)下述參照附圖進行的詳細描述,本發(fā)明的上述和其他目的、特征和優(yōu)點將變得更加顯而易見。在附圖中圖I示出了基于LZW壓縮算法的壓縮過程的流程圖;圖2示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼過程的流程圖;圖3示出了根據(jù)本發(fā)明的對要處理的中文網(wǎng)頁數(shù)據(jù)進行分詞處理的一個示例的流程圖;圖4示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼過程的一個示例的進行編碼處理前的中文網(wǎng)頁數(shù)據(jù)的示圖;圖5示出了針對圖4中的中文網(wǎng)頁數(shù)據(jù)進行分詞處理的示圖;圖6示出了經(jīng)過上述分詞處理后得到的結(jié)果的示圖;圖7示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼裝置的方框示意圖;圖8示出了根據(jù)本發(fā)明的中間服務(wù)器的方框示意圖;圖9示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)解碼方法的流程圖;圖10示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)解碼裝置的方框示意圖;和圖11示出了根據(jù)本發(fā)明的移動終端的方框示意圖。在所有附圖中相同的標號指示相似或相應的特征或功能。
具體實施例方式下面描述本公開的各個方面。應該明白的是,本文的教導可以以多種多樣形式具體體現(xiàn),并且在本文中公開的任何具體結(jié)構(gòu)、功能或兩者僅僅是代表性的。基于本文的教導,本領(lǐng)域技術(shù)人員應該明白的是,本文所公開的一個方面可以獨立于任何其它方面實現(xiàn),并且這些方面中的兩個或多個方面可以按照各種方式組合。例如,可以使用本文所闡述的任何數(shù)目的方面,實現(xiàn)裝置或?qū)嵺`方法。另外,可以使用其它結(jié)構(gòu)、功能、或除了本文所闡述的一個或多個方面之外或不是本文所闡述的一個或多個方面的結(jié)構(gòu)和功能,實現(xiàn)這種裝置或?qū)嵺`這種方法。此外,本文所描述的任何方面可以包括權(quán)利要求的至少一個元素。在進行根據(jù)本發(fā)明的實施例的描述之前,首先對本發(fā)明中使用的Unicode進行簡要說明。 術(shù)語“Unicode ”也稱為統(tǒng)一碼、萬國碼、單一碼、標準萬國碼,是計算機科學領(lǐng)域里的一項業(yè)界標準。它對世界上大部分的文字系統(tǒng)進行了整理、編碼,使得電腦可以用更為簡化的方式來呈現(xiàn)和處理文字。在關(guān)于Unicode的規(guī)范中,Unicode在O OxIOFFFF之間定義了 1,114,112個編碼空間(即,1,114,112個編碼),這些空間分為17個平面,分別編號為O 16,其中O號平面稱為基本平面,范圍為0000-FFFF,而I 16號平面稱為輔助平面,范圍為10000-10FFFF。此外,根據(jù)Unicode標準規(guī)定的使用方法,Unicode碼位區(qū)分為公共空間、私有空間和保留空間。公共空間已經(jīng)由規(guī)范針對各國文字進行編碼,私有空間可供私人組織自行利用,而保留空間是指暫時未使用的空間。根據(jù)Unicode標準,私有空間共分為三段,分別是基本平面的私有空間=PrivateUse Area:U+E000. · U+F8FF(6, 400個字符);補充平面的私有空間Supplementary PrivateUse Area-A:U+F0000. · U+FFFFD(65,534 個字符);補充平面的私有空間 SupplementaryPrivate Use Area-B:U+100000· · U+10FFFD (65,534 個字符)。此外,根據(jù) Unicode 標準,Unicode基本平面(0000-FFFF)的編碼占用3個字符,輔助平面(10000-10FFFF)的編碼占據(jù)4個字節(jié)。保留空間的大小為Unassigned:30000-DFFFF(720,896個字符)。下面將參照附圖描述本發(fā)明的各個實施例。圖2示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼過程的流程圖,該編碼過程由中間服務(wù)器執(zhí)行。所述中間服務(wù)器可以是任何類型的服務(wù)器。如圖2所示,在中間服務(wù)器獲取要被壓縮的中文網(wǎng)頁數(shù)據(jù)后,首先,在步驟S210,將所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)作為當前要處理的中文網(wǎng)頁數(shù)據(jù),開始進行中文網(wǎng)頁數(shù)據(jù)編碼過程。接著,在步驟S220,從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定中文網(wǎng)頁數(shù)據(jù)中是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞。在本發(fā)明的一個優(yōu)選示例中,所述詞庫中的每個詞被預先分配Unicode碼位空間中的私有空間或保留空間中的一個Unicode編碼。在為所述詞庫中的詞預先分配Unicode碼位空間中的Unicode編碼時,首先按照詞頻對所述詞庫中的詞進行排列,然后按照排列順序進行分配。對于排列順序在前的詞,也即使用頻率高的詞,優(yōu)先分配所述私有空間中的Unicode編碼。由于私有空間的總大小僅為137,468,對容納大的詞庫來講可能不夠。在這種情況下,還可以使用部分的保留空間。在為詞條分配Unicode編碼時,一般在所述私有空間的Unicode編碼被全部分配后,才分配所述保留空間中的Unicode編碼。而且,為了盡量避免和未來的規(guī)范沖突,在使用保留空間(B卩,分配保留空間中的Unicode編碼)時,可以采用從后往前的方式進行,所占用的保留空間的大小取決于詞庫的大小減去私有空間的大小。另外,所述私有空間包括一個位于基本平面的私有空間以及兩個位于補充平面的私有空間,位于基本平面的私有空間的Unicode編碼占用三個字節(jié),以及位于補充平面的私有空間的Unicode編碼占用四個字節(jié)。在為詞分配私有空間中的Unicode編碼時,優(yōu)先分配位于基本平面的私有空間中的Unicode編碼。一般在所述位于基本平面的私有空間的Unicode編碼被全部分配后,才分配位于補充平面的私有空間中的Unicode編碼。
從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,可以采用多種方式進行。優(yōu)選地,在本發(fā)明的一個示例中,所采用的分詞處理方式是使得所確定出的與詞庫中的詞匹配的以當前處理的中文網(wǎng)頁數(shù)據(jù)中的第一個字符開始的分詞是當前處理的中文網(wǎng)頁數(shù)據(jù)中的以該第一個字符開始的能夠與詞庫中的詞匹配的最長分詞。圖3示出了根據(jù)本發(fā)明的對要處理的中文網(wǎng)頁數(shù)據(jù)進行分詞處理的一個示例的流程圖。在圖3示出的示例中,詞庫中的詞條以TRIE索引樹的形式存儲為中文字典。該中文字典包括首字散列表和TRIE索引樹節(jié)點。詞條的首字散列函數(shù)根據(jù)漢字Unicode碼給出。通過一次哈希運算,即可直接定位漢字在首字散列表中的序號。首字散列表的第一個單元包含兩項內(nèi)容入口項個數(shù)(2字節(jié))以該字為首字的詞的個數(shù);以及第一入口項指針(4字節(jié))對應漢字TRIE索引樹的根節(jié)點。TRIE索引樹節(jié)點是以下述結(jié)構(gòu)為單元的、按關(guān)鍵字排序的數(shù)組關(guān)鍵字(2字節(jié))單一漢字,以該漢字的Unicode編碼排序;子樹大小(2字節(jié))以從根節(jié)點到當前單元的關(guān)鍵字組成的子串為前綴、且后續(xù)字不同的詞的個數(shù);字樹指針(4字節(jié)):字樹大小非零時,指向字樹;否則指向葉子。圖3示出了基于TRIE樹查詢?nèi)魏我粋€詞W[η]的過程,其中η是指該詞中所包含的字符個數(shù)。如圖3所示,首先,在步驟S310中,將i設(shè)置為i=l。接著,在步驟S320,根據(jù)首字散列表得到w[l]的TRIE的索引樹根節(jié)點,設(shè)為P。然后,在步驟S330中,將i的值增加1,隨后進行到步驟S340。在步驟S340中,在P的關(guān)鍵字節(jié)點中對w[i]進行二分查找。接著,在步驟S350中,確定在節(jié)點P的關(guān)鍵字中是否存在與w[i]匹配的關(guān)鍵字。如果節(jié)點P的某個關(guān)鍵字與w[i]匹配成功,則將P設(shè)置為該關(guān)鍵字單元對應的子樹根節(jié)點,并且返回到步驟S330。否貝U,認為P是葉子節(jié)點,并且進行到步驟S360。在步驟S360,確定i是否大于η。如果i大于η,則認為查詢成功,w[n]為詞典中的一個詞條。如果i〈n,則認為查詢失敗,將w[n-l]確定為是詞典中的一個詞條。
如上參照圖3對分詞處理過程進行了一個描述,但是上述示例僅僅是本發(fā)明的一個例示,分詞處理過程還可以采用本領(lǐng)域中公知的其它方式進行?;氐綀D2,在步驟S220中對當前要處理的中文網(wǎng)頁數(shù)據(jù)進行分詞處理后,在步驟S230中,判斷當前要處理的中文網(wǎng)頁數(shù)據(jù)中是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞。在存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,即,步驟S230的判斷結(jié)果為是時,在步驟S240,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞。在不存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,S卩,步驟S230的判斷結(jié)果為否時,在步驟S250中,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符。
然后,在步驟S260中,從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù)。隨后,在步驟S270中,判斷經(jīng)過上述替換處理后得到的下一當前處理的中文網(wǎng)頁數(shù)據(jù)是否為空。如果下一當前處理的中文網(wǎng)頁數(shù)據(jù)為空,則流程結(jié)束。如果下一當前處理的中文網(wǎng)頁數(shù)據(jù)不為空,則返回到步驟S220,針對該下一當前處理的中文網(wǎng)頁數(shù)據(jù)進行循環(huán)處理,直到所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換為Unicode編碼為止。在本發(fā)明中,中文網(wǎng)頁數(shù)據(jù)通常采用UTF-8格式進行傳輸。在本發(fā)明的其它實施例中,中文網(wǎng)頁數(shù)據(jù)也可以采用其它格式傳輸,比如UTF-16。在UTF-8格式中,每個中文字符將占3個字節(jié),如果將詞作為基本傳輸單元的話,每個詞也僅占三個或者四個字節(jié)。下面以UTF-8格式進行文本傳輸為例,對根據(jù)本發(fā)明的編碼過程所獲得的有益效果進行說明。圖4示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼過程的一個示例的進行編碼處理前的中文網(wǎng)頁數(shù)據(jù)的示圖。圖4中示出了從新浪新聞中摘取的一段中文網(wǎng)頁數(shù)據(jù),在該段中文網(wǎng)頁數(shù)據(jù)中,包含78個字符,由于每個字符占用3個字節(jié),因此總大小為78X3=234個字節(jié)。接著,按照圖5中所示的方式,針對圖4中的中文網(wǎng)頁數(shù)據(jù)進行分詞處理的示圖。如圖5所示,在分詞過程中,首先可以識別出“菲律賓”這個詞,然后將其替換為59500 (0xe68c),這樣就將三個字所占的空間9個字節(jié)節(jié)省為4個字節(jié)。與此類似,當分析至IJ “專屬經(jīng)濟區(qū)”時,可以將其替換為20745(0x328c5),這樣就將15個字節(jié)替換為4個字節(jié)。依此類推,對圖4中的中文網(wǎng)頁數(shù)據(jù)進行分詞處理。圖6示出了經(jīng)過上述分詞處理后得到的結(jié)果的示圖。在圖6中示出的結(jié)果中,詞與詞之間以空格分隔。從圖6中可以看出,經(jīng)過根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼處理后,圖4中的78個字符被分解為41個詞。由于在UTF-8格式中,每個詞僅占三個或者四個字節(jié)。在這種情況下,經(jīng)過如上編碼后得到的文本的大小最大為41X4=164。由此可以計算出,節(jié)省比例為(234-164)/234 = 30%。此外,這里要說明的是,在本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼中,采用的是邊分詞邊編碼的處理方式,也就是說,在得到一個分詞后,就將該分詞替換為Unicode編碼。因此,在完成所有的分詞處理后,得到的應該是Unicode編碼流,而不是圖6中示出的結(jié)果。圖6中的示圖僅僅是為了更好地理解本發(fā)明而將Unicode編碼用分詞代替而形成的。從上可以看出,與現(xiàn)有技術(shù)中直接對原始中文網(wǎng)頁進行壓縮后進行傳輸相比,在利用根據(jù)本發(fā)明的編碼方法對原始中文網(wǎng)頁進行重新編碼后再進行壓縮后傳輸,可以使得要傳輸?shù)奈谋敬笮「。纱丝梢詼p少數(shù)據(jù)傳輸量。圖7示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼裝置700的方框示意圖。如圖7所示,中文網(wǎng)頁數(shù)據(jù)編碼裝置700包括分詞處理單元710、編碼單元720和當前處理數(shù)據(jù)更新單元730。分詞處理單元710用于從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定該中文網(wǎng)頁數(shù)據(jù)中是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞。在本發(fā)明的一個優(yōu)選實施例中,所述詞庫中的每個詞被預先分配Unicode碼位空間中的私有空間或保留空間中的一個Unicode 編碼。編碼單元720用于在中文網(wǎng)頁數(shù)據(jù)中存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在中文網(wǎng)頁數(shù)據(jù)中不存在與預先設(shè)置的詞庫中的詞匹 配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符。當前處理數(shù)據(jù)更新單元730用于從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù)。在利用根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼裝置700對所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)進行編碼時,從所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,重復執(zhí)行所述分詞處理單元710、編碼單元720和當前處理數(shù)據(jù)更新單元730的處理過程,直到該所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換成Unicode編碼為止。圖8示出了根據(jù)本發(fā)明的中間服務(wù)器10的方框示意圖。如圖8所示,中間服務(wù)器10包括圖7中所示的中文網(wǎng)頁數(shù)據(jù)編碼裝置700。圖9示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)解碼方法的流程圖。如圖9所示,在步驟S910,移動終端從中間服務(wù)器接收按照如上所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流。在接收到所述Unicode編碼流后,根據(jù)移動終端中預先設(shè)置的詞庫,將所接收的Unicode編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù),其中,所述移動終端中預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。圖10示出了根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)解碼裝置1000的方框示意圖。如圖10所示,中文網(wǎng)頁數(shù)據(jù)解碼裝置1000包括接收單元1010和解碼單元1020。所述接收單元1020從中間服務(wù)器接收按照如上所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流。在接收到所述Unicode編碼流后,解碼單元1020根據(jù)移動終端中預先設(shè)置的詞庫,將所接收的Unicode編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù),其中,所述移動終端中預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。例如,當如圖5所示進行分詞編碼后,當在移動終端(瀏覽器客戶端)上接收到的Unicode編碼流中包含“0xe68c”時,將其解碼為“菲律賓”。圖11示出了根據(jù)本發(fā)明的移動終端20的方框示意圖。如圖11所示,移動終端20包括圖10中所示的中文網(wǎng)頁數(shù)據(jù)解碼裝置1000。利用根據(jù)本發(fā)明的中文網(wǎng)頁數(shù)據(jù)編碼方法,可以利用預先設(shè)置的一個詞庫,使用為詞庫中的每個詞分配的Unicode碼位空間的私有空間或保留空間中的Unicode碼位,對中文網(wǎng)頁內(nèi)容進行編碼,從而節(jié)省編碼后的數(shù)據(jù)流所占用的空間,由此減少中文網(wǎng)頁數(shù)據(jù)的存儲空間以及數(shù)據(jù)傳輸流量。此外,典型地,本發(fā)明所述的移動終端可為各種手持終端設(shè)備,例如手機、個人數(shù)字助理(PDA)等,因此本發(fā)明的保護范圍不應限定為某種特定類型的移動終端。此外,根據(jù)本發(fā)明的方法還可以被實現(xiàn)為由CPU執(zhí)行的計算機程序。在該計算機程序被CPU執(zhí)行時,執(zhí)行本發(fā)明的方法中限定的上述功能。此外,上述方法步驟以及系統(tǒng)單元也可以利用控制器以及用于存儲使得控制器實現(xiàn)上述步驟或單元功能的計算機程序的計算機可讀存儲設(shè)備實現(xiàn)。此外,應該明白的是,本文所述的計算機可讀存儲設(shè)備(例如,存儲器)可以是易失 性存儲器或非易失性存儲器,或者可以包括易失性存儲器和非易失性存儲器兩者。作為例子而非限制性的,非易失性存儲器可以包括只讀存儲器(ROM)、可編程ROM (PR0M)、電可編程ROM (EPROM)、電可擦寫可編程ROM (EEPROM)或快閃存儲器。易失性存儲器可以包括隨機存取存儲器(RAM),該RAM可以充當外部高速緩存存儲器。作為例子而非限制性的,RAM可以以多種形式獲得,比如同步RAM (DRAM)、動態(tài)RAM (DRAM)、同步DRAM (SDRAM)、雙數(shù)據(jù)速率 SDRAM (DDR SDRAM)、增強 SDRAM (ESDRAM)、同步鏈路 DRAM (SLDRAM)以及直接 RambusRAM (DRRAM)0所公開的方面的存儲設(shè)備意在包括但不限于這些和其它合適類型的存儲器。本領(lǐng)域技術(shù)人員還將明白的是,結(jié)合這里的公開所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實現(xiàn)為電子硬件、計算機軟件或兩者的組合。為了清楚地說明硬件和軟件的這種可互換性,已經(jīng)就各種示意性組件、方塊、模塊、電路和步驟的功能對其進行了一般性的描述。這種功能是被實現(xiàn)為軟件還是被實現(xiàn)為硬件取決于具體應用以及施加給整個系統(tǒng)的設(shè)計約束。本領(lǐng)域技術(shù)人員可以針對每種具體應用以各種方式來實現(xiàn)所述的功能,但是這種實現(xiàn)決定不應被解釋為導致脫離本發(fā)明的范圍。盡管前面公開的內(nèi)容示出了本發(fā)明的示例性實施例,但是應當注意,在不背離權(quán)利要求限定的本發(fā)明的范圍的前提下,可以進行多種改變和修改。根據(jù)這里描述的發(fā)明實施例的方法權(quán)利要求的功能、步驟和/或動作不需以任何特定順序執(zhí)行。此外,盡管本發(fā)明的元素可以以個體形式描述或要求,但是也可以設(shè)想多個,除非明確限制為單數(shù)。雖然如上參照圖描述了根據(jù)本發(fā)明的各個實施例進行了描述,但是本領(lǐng)域技術(shù)人員應當理解,對上述本發(fā)明所提出的各個實施例,還可以在不脫離本發(fā)明內(nèi)容的基礎(chǔ)上做出各種改進。因此,本發(fā)明的保護范圍應當由所附的權(quán)利要求書的內(nèi)容確定。
權(quán)利要求
1.一種中文網(wǎng)頁數(shù)據(jù)編碼方法,包括 從所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,重復執(zhí)行下述過程,直到該所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換成Unicode編碼為止 從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞; 在存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在不存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符;以及 從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù)。
2.如權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所述詞庫中的每個詞被預先分配Unicode碼位空間中的私有空間或保留空間中的一個Unicode編碼。
3.如權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所確定出的與詞庫中的詞匹配的以當前處理的中文網(wǎng)頁數(shù)據(jù)中的第一個字符開始的分詞是以該第一個字符開始的能夠與詞庫中的詞匹配的最長分詞。
4.如權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所述詞庫中的詞按照詞頻進行排列,并且按照排列順序為所述詞分配Unicode編碼, 其中,所述詞優(yōu)先分配所述私有空間中的Unicode編碼,以及在所述私有空間中的Unicode編碼被全部分配后,分配所述保留空間中的Unicode編碼。
5.如權(quán)利要求4所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所述私有空間包括一個位于基本平面的私有空間以及兩個位于補充平面的私有空間,位于基本平面的私有空間的Unicode編碼占用三個字節(jié),以及位于補充平面的私有空間的Unicode編碼占用四個字節(jié),所述詞優(yōu)先分配位于基本平面的私有空間中的Unicode編碼,以及在所述位于基本平面的私有空間的Unicode編碼被全部分配后,分配所述位于補充平面的私有空間中的Unicode編碼。
6.如權(quán)利要求5所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所述保留空間中的Unicode編碼按照從后至前的順序分配。
7.如權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法,其中,所述中文網(wǎng)頁數(shù)據(jù)采用UTF-8格式傳輸。
8.一種中文網(wǎng)頁數(shù)據(jù)編碼裝置,包括 分詞處理單元,用于從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫,對該中文網(wǎng)頁數(shù)據(jù)進行分詞處理,以確定是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞; 編碼單元,用于在存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在不存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞時,在當前要被壓縮的中文網(wǎng)頁數(shù)據(jù)中,利用該第一個字符的Unicode編碼替換該第一個字符;以及 當前處理數(shù)據(jù)更新單元,用于從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù), 其中,從所獲取的要被壓縮的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,重復執(zhí)行所述分詞處理單元、編碼單元和當前處理數(shù)據(jù)更新單元的處理過程,直到該所獲取的中文網(wǎng)頁數(shù)據(jù)全部替換成Unicode編碼為止。
9.一種中間服務(wù)器,包括如權(quán)利要求8所述的中文網(wǎng)頁數(shù)據(jù)編碼裝置。
10.一種中文網(wǎng)頁數(shù)據(jù)解碼方法,包括 從中間服務(wù)器接收按照權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流;以及 根據(jù)移動終端中預先設(shè)置的詞庫,將所接收的Unicode編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù), 其中,所述移動終端中預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。
11.一種中文網(wǎng)頁數(shù)據(jù)解碼裝置,包括 接收單元,用于從中間服務(wù)器接收按照權(quán)利要求I所述的中文網(wǎng)頁數(shù)據(jù)編碼方法編碼后的Unicode編碼流;以及 解碼單元,用于根據(jù)中文網(wǎng)頁數(shù)據(jù)解碼裝置中的預先設(shè)置的詞庫,將所接收的Unicode編碼流解碼為對應的中文網(wǎng)頁數(shù)據(jù),所述中文網(wǎng)頁數(shù)據(jù)解碼裝置中的預先設(shè)置的詞庫與中間服務(wù)器中預先設(shè)置的詞庫相同。
12.—種移動終端,包括如權(quán)利要求11所述的中文網(wǎng)頁數(shù)據(jù)解碼裝置。
全文摘要
本發(fā)明提供了一種中文網(wǎng)頁數(shù)據(jù)編碼方法,包括從當前處理的中文網(wǎng)頁數(shù)據(jù)的第一個字符開始,根據(jù)預先設(shè)置的詞庫進行分詞處理,以確定是否存在與預先設(shè)置的詞庫中的詞匹配的以該第一個字符開始的分詞;在存在匹配的以該第一個字符開始的分詞時,利用與該分詞匹配的詞的對應Unicode編碼替換該分詞,或者在不存在匹配的以該第一個字符開始的分詞時,利用該第一個字符的Unicode編碼替換該第一個字符;以及從當前處理的中文網(wǎng)頁數(shù)據(jù)中去除已經(jīng)被替換成Unicode編碼的部分,作為下一當前處理的中文網(wǎng)頁數(shù)據(jù),重復執(zhí)行上述處理,直到中文網(wǎng)頁數(shù)據(jù)被完全替換為Unicode編碼流。利用該方法,可以節(jié)省編碼后的數(shù)據(jù)流的占用空間,由此減少中文網(wǎng)頁數(shù)據(jù)的存儲空間以及數(shù)據(jù)傳輸流量。
文檔編號G06F17/30GK102880703SQ20121036168
公開日2013年1月16日 申請日期2012年9月25日 優(yōu)先權(quán)日2012年9月25日
發(fā)明者梁捷, 俞永福, 何小鵬, 朱順炎, 田文 申請人:廣州市動景計算機科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1