分析存取路徑以存取映像文件中目標文件的系統(tǒng)及其方法
【專利摘要】一種分析存取路徑以存取映像文件中目標文件的系統(tǒng)及其方法,其通過依據(jù)存取路徑判斷目標文件是否包含在映像文件中,并判斷存取路徑所包含的實體路徑及映像路徑后,依據(jù)實體路徑開啟映像文件,并依據(jù)映像路徑在映像文件中存取目標文件的技術手段,可以直接在服務器上存取映像文件中的目標文件,并達成減少浪費網(wǎng)絡資源,也縮短下載等待時間的技術效果。
【專利說明】分析存取路徑以存取映像文件中目標文件的系統(tǒng)及其方法
【技術領域】
[0001]本發(fā)明涉及一種文件存取系統(tǒng)及其方法,尤其涉及一種分析存取路徑以存取映像文件中目標文件的系統(tǒng)及其方法。
【背景技術】
[0002]網(wǎng)絡硬盤服務平臺可以提供使用者將文件上傳到網(wǎng)絡硬盤服務平臺中。使用者可以上傳任何類型的文件到網(wǎng)絡硬盤服務平臺中,例如,數(shù)據(jù)文檔、多媒體文檔、應用程序、系統(tǒng)設定文檔、甚至是映像文件等。其中,由于映像文件通常包含了獨立的目錄結構以及多個在各個目錄中的文件,因此,映像文件通常具有較大的文件大小。
[0003]網(wǎng)絡硬盤服務平臺除了提供使用者上傳文件之外,同時也提供使用者下載與刪除所上傳的文件,甚至,在部分的網(wǎng)絡硬盤服務平臺中,更提供了在線瀏覽數(shù)據(jù)文檔、或是在線播放多媒體文件的功能。
[0004]不過,目前的網(wǎng)絡硬盤服務平臺都沒有提供解析映像文件的功能,也就是說,若使用者希望存取映像文件中所包含的某些文件時,必須將整個映像文件由網(wǎng)絡硬盤服務平臺下載至所使用的裝置中,然后解析所下載的映像文件,由此獲取映像文件中的文件。若使用者所希望存取的文件只占了映像文件中的小部分,那么,為了獲取映像文件中的小部分內(nèi)容,而必須下載整個映像文件,這將造成網(wǎng)絡資源的浪費,也必須花費下載映像文件的時間。
[0005]綜上所述,可知現(xiàn)有技術中長期以來一直存在需要由網(wǎng)絡硬盤服務平臺完整下載映像文件后才能夠存取映像文件中的文件的問題,因此有必要提出改進的技術手段,來解決這一問題。
【發(fā)明內(nèi)容】
[0006]有鑒于現(xiàn)有技術存在需要完整下載映像文件后才能夠存取映像文件中的文件的問題,本發(fā)明遂揭露一種分析存取路徑以存取映像文件中目標文件的系統(tǒng)及其方法,其中:
[0007]本發(fā)明所揭露的分析存取路徑以存取映像文件中目標文件的系統(tǒng),應用于服務器,服務器提供客戶端連接,且服務器具有存儲介質(zhì),該系統(tǒng)至少包含:傳輸模塊,用以接收客戶端所傳送的存取目標文件的文件存取請求;路徑分析模塊,用以依據(jù)文件存取請求所包含的存取路徑判斷目標文件是否包含在映像文件中,并在目標文件包含在映像文件中時,判斷存取路徑所包含的實體路徑及映像路徑;文件存取模塊,用以依據(jù)實體路徑開啟映像文件;映像文件處理模塊,用以解析文件存取模塊所開啟的映像文件,并依據(jù)映像路徑在被解析的映像文件中存取目標文件。
[0008]本發(fā)明所揭露的分析存取路徑以存取映像文件中目標文件的方法,應用于服務器,服務器提供客戶端連接,其步驟至少包括:接收客戶端所傳送的存取目標文件的文件存取請求;依據(jù)文件存取請求所包含的存取路徑判斷目標文件是否包含在映像文件中;當目標文件包含在映像文件中時,判斷存取路徑所包含的實體路徑及映像路徑;依據(jù)實體路徑開啟映像文件;解析被開啟的映像文件,并依據(jù)映像路徑在被解析的映像文件中存取目標文件。
[0009]本發(fā)明所揭露的系統(tǒng)與方法如上,與現(xiàn)有技術之間的差異在于本發(fā)明通過依據(jù)存取路徑判斷目標文件是否包含在映像文件中,并判斷存取路徑所包含的實體路徑及映像路徑后,依據(jù)實體路徑開啟映像文件,并依據(jù)映像路徑在映像文件中存取目標文件,由此解決現(xiàn)有技術所存在的問題,并可以達成減少浪費網(wǎng)絡資源,也縮短下載等待時間的技術效果。
【專利附圖】
【附圖說明】
[0010]圖1為本發(fā)明所述的分析存取路徑以存取映像文件中目標文件的系統(tǒng)架構圖。
[0011]圖2A為本發(fā)明所述的分析存取路徑以存取映像文件中目標文件的方法流程圖。
[0012]圖2B為本發(fā)明所述的解析映像文件的詳細方法流程圖。
[0013]主要部件附圖標記:
[0014]100服務器
[0015]101存儲介質(zhì)
[0016]110傳輸模塊
[0017]120路徑分析模塊
[0018]130文件存取·模塊
[0019]150映像文件處理模塊
[0020]400客戶端
[0021]步驟210 接收客戶端所傳送的存取目標文件的存取請求
[0022]步驟220 依據(jù)文件存取請求所包含的存取路徑判斷目標文件是否包含在映像文件中
[0023]步驟230 判斷存取路徑所包含的實體路徑及映像路徑
[0024]步驟240 依據(jù)存取路徑存取目標文件
[0025]步驟250 依據(jù)實體路徑開啟映像文件
[0026]步驟260 解析映像文件
[0027]步驟262 判斷映像文件的編碼類型
[0028]步驟266 依據(jù)編碼類型解碼映像文件
[0029]步驟270 依據(jù)映像路徑在被解析的映像文件中存取目標文件
[0030]步驟280 傳送存取目標文件所產(chǎn)生的存取結果
【具體實施方式】
[0031]以下將結合附圖及實施例來詳細說明本發(fā)明的特征與實施方式,內(nèi)容足以使任何本領域技術人員能夠輕易地充分理解本發(fā)明解決技術問題所應用的技術手段并據(jù)以實施,由此實現(xiàn)本發(fā)明可達成的技術效果。
[0032]本發(fā)明可以讓使用者直接存取遠端的服務器所儲存的映像文件(image )所包含的目標文件,這樣,使用者可以不需要先下載映像文件后,才由所下載的映像文件中讀取出目標文件進行存取。其中,服務器通常是提供網(wǎng)絡硬盤服務,由此提供使用者操作客戶端存取儲存于網(wǎng)絡硬盤服務中的文件,但本發(fā)明并不以此為限,凡可提供使用者儲存文件并下載所儲存的文件的方式都可以使用本發(fā)明。
[0033]本發(fā)明所述的“映像文件”為包含一個或多個文件的文件,例如,磁盤映像文件(Disk Image)、光盤映像文件(ISO Image)、壓縮包(Zipped Package)、軟件封裝文件等,但本發(fā)明所述的映像文件并不以上述為限。
[0034]以下先以圖1本發(fā)明所述的分析存取路徑以存取映像文件中的目標文件的系統(tǒng)架構圖來說明本發(fā)明的系統(tǒng)運作。如圖1所示,本發(fā)明的系統(tǒng)含有傳輸模塊110、路徑分析模塊120、文件存取模塊130、以及映像文件處理模塊150。
[0035]傳輸模塊110負責接收客戶端400所傳送的文件存取請求。傳輸模塊110所接收的文件存取請求中,包含客戶端400欲存取的目標文件的存取路徑。
[0036]若客戶端400欲存取的目標文件是在服務器100的存儲介質(zhì)101中可以直接被存取的文件,則文件存取請求中所包含的存取路徑即為在服務器100中可以存取到目標文件的路徑,此路徑即為目前存取目標文件的常見路徑,例如,“/user/documents/target, txt”等。而若目標文件為包含在映像文件中的文件,則表示存取目標文件之前,必須先對映像文件進行處理,也就是說,客戶端400存取的目標文件無法直接被服務器100存取,這樣,文件存取請求中所包含的存取路徑將會包含可以在服務器100上存取到映像文件的路徑,以及包含目標文件在映像文件中的路徑,例如,“/user/documents/backup, iso/config/network, xml”,其中,“/user/documents/backup, iso”為包含目標文件的映像文件在服務器100上的路徑,在本發(fā)明中被稱為“實體路徑”,“/config/network.xml”為目標文件在映像文件中的路徑,在本發(fā)明中被稱為“映像路徑”。
[0037]特別值得一提的是,在本發(fā)明中,包含目標文件的映像文件可以包含在另一個映像文件中,例如,目標文件“DSC0208.raw”包含在映像文件“photo, zip”中,而映像文件“photo, zip”包含在另一個映像文件“backup, iso”中,且映像文件“backup, iso”被儲存在服務器100的“/user/documents/”目錄中,這樣,若要存取目標文件“DSC0208.raw”,則存取路徑應為 “/user/documents/backup, iso/phot0.zip/DSC0208.raw”。事實上,本發(fā)明映像文件包含映像文件的次數(shù)并沒有特別的限制,也就是說,在上述的例子中,映像文件“backup, iso”也可以包含在其他的映像文件中。
[0038]傳輸模塊110也可以將映像文件處理模塊150或文件存取模塊130存取目標文件后所產(chǎn)生的存取結果傳送到客戶端400。一般而言,若客戶端400傳送的文件存取請求表示客戶端400欲將數(shù)據(jù)寫入目標文件中,則傳輸模塊110所傳送的存取結果為數(shù)據(jù)寫入的結果,若客戶端400傳送的文件存取請求表示客戶端400欲讀取目標文件中的數(shù)據(jù),則傳輸模塊110所傳送的存取結果為被讀取的數(shù)據(jù),但傳輸模塊110所傳送的存取結果并不以上述為限。
[0039]路徑分析模塊120負責依據(jù)傳輸模塊110所接收的文件存取請求所包含的存取路徑判斷客戶端400欲存取的目標文件是否包含在映像文件中。路徑分析模塊120也會在判斷出目標文件包含在映像文件中時,進一步判斷表示映像文件在服務器100中的實體路徑,以及表示目標文件在映像文件中的映像路徑。
[0040]路徑分析模塊120可以判斷存取路徑中是否只包含一個文件的文件名稱,也可以判斷存取路徑中的各目錄的目錄名稱是否為文件名稱,由此判斷目標文件是否包含在映像文件中,但路徑分析模塊120判斷目標文件是否包含在映像文件中的方式并不以上述為限。例如,當存取路徑為 “/user/document/target, txt” 或“/user/document/backup-1so” (若backup, iso為映像文件)時,路徑分析模塊120可以因為存取路徑中只有一個文件名稱、或因為存取路徑中的目錄“/user”與“/documents”都不是文件名稱等任何一個原因,而判斷出客戶端400欲存取的目標文件并未包含在映像文件中;而當存取路徑為“/user/document/backup, iso/config/network, xml” 時,路徑分析模塊 120 會因為存取路徑中包含“backup, iso”與“network, xml”兩個文件名稱、或因為存取路徑中的目錄名稱“/backup, iso”實際上是映像文件“backup, iso”的文件名稱等任何一個原因,而判斷出客戶端400欲存取的目標文件包含在映像文件中,此時,路徑分析模塊120也會一并判斷出實體路徑為存取路徑的開始至文件名稱“backup, iso”為止,也就是“/user/document/backup,iso”,而映像路徑則是由文件名稱“backup, iso”至存取路徑的最后,也就是“/config/network, xml”。
[0041]文件存取模塊130負責在路徑分析模塊120判斷出客戶端400欲存取的目標文件包含在映像文件中時,依據(jù)路徑分析模塊120所判斷出的實體路徑開啟存儲介質(zhì)101所儲存的包含目標文件的映像文件。
[0042]文件存取模塊130也可以在路徑分析模塊120判斷出客戶端400欲存取的目標文件并未包含在映像文件中時,依據(jù)文件存取請求所包含的存取路徑,直接至存儲介質(zhì)101中存取目標文件
[0043]映像文件處理模塊150負責解析文件存取模塊130所開啟的映像文件。一般而言,映像文件處理模塊150會先判斷文件存取模塊130所開啟的映像文件的編碼類型,并依據(jù)所判斷出的編碼類型,使用與所判斷出的編碼類型相對應的解碼演算法解碼該映像文件,由此解析出該映像文件中所包含的各個目錄與文件。另外,映像文件處理模塊150也負責依據(jù)路徑分析模塊120所判斷出的映像路徑,在被解析的映像文件中存取目標文件。
[0044]接著以一個實施例來解說本發(fā)明的運作系統(tǒng)與方法,并請參照圖2A本發(fā)明所述的分析存取路徑以存取映像文件中目標文件的方法流程圖。在本發(fā)明中,假設服務器100為提供網(wǎng)絡硬盤服務的文件服務器,但本發(fā)明并不以此為限。
[0045]當客戶端400希望存取服務器100的存儲介質(zhì)101中的目標文件時,可以將存取目標文件的文件存取請求傳送到服務器100。這樣,傳輸模塊110可以接收到客戶端400所傳送的文件存取請求(步驟210)。在本實施例中,假設客戶端400欲存取的目標文件為“network, xml”,該目標文件包含在磁盤映像文件“system, iso”中,且磁盤映像文件儲存在服務器100的“/users/mana/backup”目錄中,因此,客戶端400所發(fā)出的文件存取請求會包含 “/users/mana/backup/system, iso/network, xml” 的存取路徑。
[0046]路徑分析模塊120可以在傳輸模塊110接收到文件存取請求后,依據(jù)傳輸模塊110所接收的文件存取請求所包含的存取路徑,判斷目標文件是否包含在映像文件中(步驟220),并在目標文件包含在映像文件中時,判斷存取路徑所包含的實體路徑以及映像路徑(步驟230)。在本實施例中,假設路徑分析模塊120會檢查存取路徑中的各個目錄實際上是否為文件,也就是說,路徑分析模塊120會逐一檢查存取路徑中的“USerS”、“mana”、“backup'“system, iso”等目錄名稱是否為文件名稱,由于“users”、“mana”、“backup”確實為服務器100上的目錄,但“system, iso”卻是文件,因此,路徑分析模塊120會判斷出目標文件“network, xml”包含在映像文件“system, iso”中,且實體路徑為“/users/mana/backup/system, iso,,,映像路徑為 “/network, xml,,。
[0047]在路徑分析模塊120判斷出存取路徑所包含的實體路徑以及映像路徑(步驟230)后,文件存取模塊130可以依據(jù)路徑分析模塊120所分析出的實體路徑開啟包含目標文件的映像文件(步驟250)。在本實施例中,文件存取模塊130也就是依據(jù)實體路徑“/users/mana/backup/system, iso”,開啟被儲存在服務器 100 的 “/users/mana/backup” 目錄中的映像文件“backup, iso”。
[0048]在文件存取模塊130依據(jù)路徑分析模塊120所分析出的實體路徑開啟映像文件(步驟250)后,映像文件處理模塊150可以解析文件存取模塊130所開啟的映像文件(步驟260)。在本實施例中,假設映像文件處理模塊150可以如圖2B的流程所示,先判斷被開啟的映像文件“backup, iso”中的編碼類型(步驟262),由于映像文件“backup, iso”的編碼類型為磁盤映像文件,因此,映像文件處理模塊150可以使用與制作出映像文件“backup,iso”的磁盤映像文件編碼方式對應的解碼方式解碼映像文件“backup, iso”(步驟266),由此解析出映像文件“backup, iso”所包含的目錄結構以及文件。
[0049]繼續(xù)回到圖2A,在映像文件處理模塊150解析出文件存取模塊130所開啟的映像文件(步驟260)后,映像文件處理模塊150可以依據(jù)路徑分析模塊120所判斷出的映像路徑,在所解析出的映像文件中存取目標文件(步驟270)。這樣,通過本發(fā)明,使用者便可以在不需要完整下載映像文件的情況下,通過服務器100讀取映像文件所包含的目標文件,并下載服務器100所讀出的目標文件。
[0050]在本實施例中,映像文件處理模塊150會存取映像文件“backup, iso”的根目錄下的目標文件“network, xml”。若客戶端400是希望在目標文件中寫入數(shù)據(jù),例如,在目標文件“network, xml”中增加設定內(nèi)容,則映像文件處理模塊150在目標文件中寫入數(shù)據(jù)后,文件存取模塊130可以使用寫入數(shù)據(jù)后的目標文件“network, xml”取代映像文件“backup.1so”中原本的目標文件“network, xml”,并使用與制作出映像文件“backup, iso”的編碼方式對取代目標文件“network, xml ”后的映像文件“backup, iso”重新進行編碼,再將經(jīng)過重新編碼的映像文件“backup, iso”存入服務器100的存儲介質(zhì)101中,并產(chǎn)生數(shù)據(jù)寫入成功或數(shù)據(jù)寫入失敗的信息。而若客戶端400是希望讀取目標文件的內(nèi)容,則映像文件處理模塊150會讀取目標文件的內(nèi)容,其中,被映像文件處理模塊150所讀出的內(nèi)容即為本發(fā)明所述的存取結果。
[0051]在映像文件處理模塊150在映像文件中存取目標文件(步驟270)后,傳輸模塊110可以將映像文件處理模塊150存取目標文件所產(chǎn)生的存取結果傳送回客戶端400 (步驟280)。在本實施例中,傳輸模塊110所傳送的存取結果也就是映像文件處理模塊150所讀出的目標文件的內(nèi)容,或是寫入成功或?qū)懭胧〉男畔ⅰ?br>
[0052]在上述的實施例中,若客戶端400所欲存取的目標文件為服務器100中的“/users/mana/note.txt”,則在傳輸模塊110接收到文件存取請求(步驟210)后,路徑分析模塊120可以依據(jù)文件存取請求所包含的存取路徑“/users/mana/note.txt”判斷目標文件是否包含在映像文件中(步驟220)。
[0053]由于存取路徑中的“USerS”、“mana”確實為服務器100中的目錄,因此,路徑分析模塊120可以判斷出目標文件沒有包含在映像文件中,這樣,文件存取模塊130可以直接依據(jù)文件存取請求所包含的存取路徑“/users/mana/note.txt”,存取在服務器100的目錄“/users/mana”下的目標文件“note, txt”(步驟240),傳輸模塊110可以將文件存取模塊130存取目標文件后所產(chǎn)生的存取結果傳回客戶端400 (步驟280)。
[0054]綜上所述,可知本發(fā)明與現(xiàn)有技術之間的差異在于具有依據(jù)存取路徑判斷目標文件是否包含在映像文件中,并判斷存取路徑所包含的實體路徑及映像路徑后,依據(jù)實體路徑開啟映像文件,并依據(jù)映像路徑在映像文件中存取目標文件的技術手段,通過這一技術手段可以解決現(xiàn)有技術所存在需要完整下載映像文件后才能夠存取映像文件中的文件的問題,進而達成減少浪費網(wǎng)絡資源,也縮短下載等待時間的技術效果。
[0055]再者,本發(fā)明的分析存取路徑以存取映像文件中目標文件的方法,可實現(xiàn)于硬件、軟件或硬件與軟件的組合中,亦可在電腦系統(tǒng)中以集中方式實現(xiàn)或以不同元件散布于若干互連的電腦系統(tǒng)的分散方式實現(xiàn)。
[0056]雖然本發(fā)明所揭露的實施方式如上,然而所述內(nèi)容并非用以直接限定本發(fā)明的專利保護范圍。任何本發(fā)明所屬領域技術人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,對本發(fā)明的實施的形式上及細節(jié)上作一些更動潤飾,均屬于本發(fā)明的專利保護范圍。本發(fā)明的專利保護范圍,仍須以權利要求書所限定的內(nèi)容為準。
【權利要求】
1.一種分析存取路徑以存取映像文件中目標文件的方法,其特征在于,應用于服務器,該服務器提供至少一個客戶端連接,該方法至少包含下列步驟: 接收該客戶端所傳送的存取目標文件的文件存取請求; 依據(jù)該文件存取請求所包含的存取路徑判斷該目標文件是否包含在映像文件中; 當該目標文件包含在該映像文件中時,判斷該存取路徑所包含的實體路徑及映像路徑; 依據(jù)該實體路徑開啟該映像文件;及 解析該被開啟的映像文件,并依據(jù)該映像路徑在該被解析的映像文件中存取該目標文件。
2.如權利要求1所述的分析存取路徑以存取映像文件中目標文件的方法,其特征在于,該方法還包含當該目標文件未包含在該映像文件中時,依據(jù)該存取路徑存取該目標文件的步驟。
3.如權利要求1所述的分析存取路徑以存取映像文件中目標文件的方法,其特征在于,解析該映像文件的步驟還包含判斷該映像文件的編碼類型,并依據(jù)該編碼類型解碼該映像文件的步驟。
4.如權利要求1所述的分析存取路徑以存取映像文件中目標文件的方法,其特征在于,依據(jù)該文件存取請求所包含的存取路徑判斷該目標文件是否包含在該映像文件中的步驟為判斷該存取路徑中的各目錄是否為該映像文件的文件名稱、或判斷該存取路徑中是否僅包含一個文件名稱。
5.如權利要求1所述的分析存取路徑以存取映像文件中目標文件的方法,其特征在于,該方法在依據(jù)該映像路徑在該被解析的映像文件中存取該目標文件的步驟后,還包含傳送存取該目標文件所產(chǎn)生的存取結果至該客戶端的步驟。
6.一種分析存取路徑以存取映像文件中目標文件的系統(tǒng),其特征在于,應用于服務器,該服務器提供至少一個客戶端連接,且該服務器具有存儲介質(zhì),該系統(tǒng)至少包含: 傳輸模塊,用以接收該客戶端所傳送的存取目標文件的文件存取請求; 路徑分析模塊,用以依據(jù)該文件存取請求所包含的存取路徑判斷該目標文件是否包含在映像文件中,并在該目標文件包含在該映像文件中時,判斷該存取路徑所包含的實體路徑及映像路徑; 文件存取模塊,用以依據(jù)該實體路徑開啟該映像文件 '及 映像文件處理模塊,用以解析該文件存取模塊所開啟的該映像文件,并依據(jù)該映像路徑在該被解析的映像文件中存取該目標文件。
7.如權利要求6所述的分析存取路徑以存取映像文件中目標文件的系統(tǒng),其特征在于,該文件存取模塊還用以在該路徑分析模塊判斷該目標文件未包含在該映像文件中時,依據(jù)該存取路徑存取該目標文件。
8.如權利要求6所述的分析存取路徑以存取映像文件中目標文件的系統(tǒng),其特征在于,該映像文件處理模塊還用以判斷該映像文件的編碼類型,并依據(jù)該編碼類型解碼該映像文件。
9.如權利要求6所述的分析存取路徑以存取映像文件中目標文件的系統(tǒng),其特征在于,該路徑分析模塊是判斷該存取路徑中的各目錄是否為該映像文件的文件名稱、或判斷該存取路徑中是否僅包含一個文件名稱。
10.如權利要求6所述的分析存取路徑以存取映像文件中目標文件的系統(tǒng),其特征在于,該傳輸模塊還用以傳送該映像文件處理模塊或該文件存取模塊存取該目標文件所產(chǎn)生的存取結果至該客戶端?!?br>
【文檔編號】H04L29/08GK103856504SQ201210501617
【公開日】2014年6月11日 申請日期:2012年11月29日 優(yōu)先權日:2012年11月29日
【發(fā)明者】李東海 申請人:英業(yè)達科技有限公司, 英業(yè)達股份有限公司