一種組態(tài)文件的版本兼容方法及裝置制造方法
【專利摘要】本發(fā)明公開(kāi)了一種組態(tài)文件的版本兼容方法,所述組態(tài)文件包括至少一個(gè)段數(shù)據(jù),所述段數(shù)據(jù)中的數(shù)據(jù)內(nèi)容以BSON的規(guī)則進(jìn)行數(shù)據(jù)存儲(chǔ);所述方法包括:當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第二組態(tài)文件中存在所述第一組態(tài)文件不涉及的第一數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件忽略所述不涉及的第一數(shù)據(jù)內(nèi)容,并從所述第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容;其中,所述第一組態(tài)文件與所述第二組態(tài)文件為不同版本的組態(tài)文件。本發(fā)明還公開(kāi)了一種組態(tài)文件的版本兼容裝置。
【專利說(shuō)明】一種組態(tài)文件的版本兼容方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及工業(yè)自動(dòng)化【技術(shù)領(lǐng)域】,尤其涉及一種組態(tài)文件的版本兼容方法及裝 置。
【背景技術(shù)】
[0002] 工業(yè)自動(dòng)化組態(tài)中的格式文件體系多種多樣,根據(jù)具體應(yīng)用場(chǎng)景不同及各系列 軟件產(chǎn)品的區(qū)別存在各類文件格式,常用的有二進(jìn)制文檔、二進(jìn)制復(fù)合文檔、文本文檔、 ini (Initial,初始化)配置文件、XML(Extensible Markup Language,可擴(kuò)展標(biāo)記語(yǔ)言)文 件等。其中,常用作為大量數(shù)據(jù)及配置信息存儲(chǔ)的主要是二進(jìn)制文檔、二進(jìn)制復(fù)合文檔及 XML文件。
[0003] 相對(duì)來(lái)說(shuō),考慮到數(shù)據(jù)格式及組態(tài)的保密性,不同公司的軟件產(chǎn)品大部分都是采 用二進(jìn)制文檔及二進(jìn)制復(fù)合文檔進(jìn)行組態(tài)的記錄,然而這兩種格式對(duì)于軟件升級(jí)所帶來(lái)的 文件格式變動(dòng)的兼容性比較差。相對(duì)出色一點(diǎn)的軟件產(chǎn)品會(huì)在升級(jí)文件格式時(shí),考慮到對(duì) 以前版本的一定兼容性,但是工業(yè)現(xiàn)場(chǎng)往往存在多個(gè)工段、多套裝置,同一套工業(yè)自動(dòng)化解 決方案歷時(shí)也會(huì)比較久,跨度可能達(dá)到好幾年,中間會(huì)分好幾個(gè)階段投產(chǎn)使用,在這些情況 中,現(xiàn)場(chǎng)可能會(huì)同時(shí)使用到不同版本的軟件產(chǎn)品,并且會(huì)存在一些組態(tài)交互使用的情況,遇 到這類情況,常規(guī)的處理方式是將所有軟件產(chǎn)品升級(jí)到最新的版本,并對(duì)出現(xiàn)兼容性問(wèn)題 的地方進(jìn)行人工組態(tài)修正,但是,這種做法不僅耗時(shí)耗力,同時(shí)對(duì)已經(jīng)投產(chǎn)的現(xiàn)場(chǎng)會(huì)帶來(lái)很 大的擾動(dòng),存在一定的安全隱患,并且,部分軟件產(chǎn)品由于格式上難以做到兼容,會(huì)導(dǎo)致一 些組態(tài)需要重新配置,這類情況所帶來(lái)的工作成本尤為龐大。
【發(fā)明內(nèi)容】
[0004] 有鑒于此,本發(fā)明實(shí)施例的主要目的在于提供一種組態(tài)文件的版本兼容方法及裝 置,以實(shí)現(xiàn)兼容不同版本組態(tài)文件的目的。
[0005] 為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了一種組態(tài)文件的版本兼容方法,所述組態(tài) 文件包括至少一個(gè)段數(shù)據(jù),所述段數(shù)據(jù)中的數(shù)據(jù)內(nèi)容以BSON的規(guī)則進(jìn)行數(shù)據(jù)存儲(chǔ);所述方 法包括:
[0006]當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第二組態(tài)文件中存在所 述第一組態(tài)文件不涉及的第一數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件忽略所述不涉及的第一數(shù)據(jù) 內(nèi)容,并從所述第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容;其中,所述第一 組態(tài)文件與所述第二組態(tài)文件為不同版本的組態(tài)文件。
[0007] 優(yōu)選地,當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第一組態(tài)文件 中存在所述第二組態(tài)文件不涉及的第二數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件從所述第二組態(tài)文 件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容,并將所述不涉及的第二數(shù)據(jù)內(nèi)容設(shè)置為默 認(rèn)值。
[0008] 優(yōu)選地,所述組態(tài)文件還包括文件頭、與每個(gè)段數(shù)據(jù)一一對(duì)應(yīng)的段描述;
[0009] 所述文件頭包括:文件標(biāo)志、文件標(biāo)志位、段數(shù)量、頭部數(shù)據(jù)大小、文件的最后修改 時(shí)間、文件類型、文件版本標(biāo)識(shí)、第一預(yù)留區(qū)域;
[0010] 所述段描述包括:與段數(shù)據(jù)對(duì)應(yīng)的段名稱、段數(shù)據(jù)的校驗(yàn)數(shù)據(jù)、段數(shù)據(jù)偏移量、段 數(shù)據(jù)的標(biāo)志位、第一數(shù)據(jù)段大小、壓縮算法標(biāo)識(shí)、加密算法標(biāo)識(shí)、第二預(yù)留區(qū)域。
[0011] 優(yōu)選地,若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被壓縮,則當(dāng)采用第一組態(tài)文件 解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述壓縮算法標(biāo)識(shí)指示的解壓算法解壓從所 述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容。
[0012] 優(yōu)選地,若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被加密,則當(dāng)采用第一組態(tài)文件 解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述加密算法標(biāo)識(shí)指示的解密算法解密從所 述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容。
[0013] 優(yōu)選地,所述段數(shù)據(jù)包括第二數(shù)據(jù)段大小和數(shù)據(jù)內(nèi)容;
[0014] 所述第二數(shù)據(jù)段大小為實(shí)際的段數(shù)據(jù)大小,所述第一數(shù)據(jù)段大小為壓縮前的段數(shù) 據(jù)大小。
[0015] 本發(fā)明實(shí)施例還提供了一種組態(tài)文件的版本兼容裝置,所述組態(tài)文件包括至少一 個(gè)段數(shù)據(jù),所述段數(shù)據(jù)中的數(shù)據(jù)內(nèi)容以BSON的規(guī)則進(jìn)行數(shù)據(jù)存儲(chǔ);所述裝置包括 :
[0016] 第一兼容單元,用于當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第 二組態(tài)文件中存在所述第一組態(tài)文件不涉及的第一數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件忽略所 述不涉及的第一數(shù)據(jù)內(nèi)容,并從所述第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù) 內(nèi)容;其中,所述第一組態(tài)文件與所述第二組態(tài)文件為不同版本的組態(tài)文件。
[0017] 優(yōu)選地,所述裝置還包括:
[0018] 第二兼容單元,用于當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第 一組態(tài)文件中存在所述第二組態(tài)文件不涉及的第二數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件從所述 第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容,并將所述不涉及的第二數(shù)據(jù)內(nèi) 容設(shè)置為默認(rèn)值。
[0019] 優(yōu)選地,所述組態(tài)文件還包括文件頭、與每個(gè)段數(shù)據(jù)一一對(duì)應(yīng)的段描述;
[0020] 所述文件頭包括:文件標(biāo)志、文件標(biāo)志位、段數(shù)量、頭部數(shù)據(jù)大小、文件的最后修改 時(shí)間、文件類型、文件版本標(biāo)識(shí)、第一預(yù)留區(qū)域;
[0021] 所述段描述包括:與段數(shù)據(jù)對(duì)應(yīng)的段名稱、段數(shù)據(jù)的校驗(yàn)數(shù)據(jù)、段數(shù)據(jù)偏移量、段 數(shù)據(jù)的標(biāo)志位、第一數(shù)據(jù)段大小、壓縮算法標(biāo)識(shí)、加密算法標(biāo)識(shí)、第二預(yù)留區(qū)域;
[0022] 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被壓縮,則當(dāng)所述第一兼容單元或所述第 二兼容單元采用第一組態(tài)文件解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述壓縮算法 標(biāo)識(shí)指示的解壓算法解壓從所述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容;
[0023] 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被加密,則當(dāng)所述第一兼容單元或所述第 二兼容單元采用第一組態(tài)文件解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述加密算法 標(biāo)識(shí)指示的解密算法解密從所述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容。
[0024] 優(yōu)選地,所述段數(shù)據(jù)包括第二數(shù)據(jù)段大小和數(shù)據(jù)內(nèi)容;
[0025] 所述第二數(shù)據(jù)段大小為實(shí)際的段數(shù)據(jù)大小,所述第一數(shù)據(jù)段大小為壓縮前的段數(shù) 據(jù)大小。
[0026] 本發(fā)明實(shí)施例提供的組態(tài)文件的版本兼容方法及裝置,可以達(dá)到識(shí)別當(dāng)前版本數(shù) 據(jù)、只丟棄高版本新增數(shù)據(jù)的目的,方便于不同版本軟件的識(shí)別,由于高、低版本軟件在理 解一份組態(tài)文件時(shí)可以得到各自支持的信息,甚至于不同軟件的不同功能,由此解決了不 同版本組態(tài)的兼容性問(wèn)題,包括高版本對(duì)低版本的兼容、低版本對(duì)高版本的兼容、以及平行 版本的兼容。
【專利附圖】
【附圖說(shuō)明】
[0027] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明 的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù) 這些附圖獲得其他的附圖。
[0028] 圖1為本發(fā)明實(shí)施例組態(tài)文件格式示意圖;
[0029] 圖2為本發(fā)明實(shí)施例組態(tài)文件的版本兼容方法的流程示意圖;
[0030] 圖3為本發(fā)明實(shí)施例組態(tài)文件的版本兼容裝置的組成示意圖。
【具體實(shí)施方式】
[0031] 為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0032] 需要說(shuō)明的是,組態(tài)通常泛指工業(yè)自動(dòng)化領(lǐng)域中對(duì)自動(dòng)化控制系統(tǒng)軟硬件及工程 信息的配置行為,亦指通過(guò)這種配置行為產(chǎn)生的文件和數(shù)據(jù)集合,本發(fā)明中的組態(tài)特指通 過(guò)這種配置行為產(chǎn)生的文件和數(shù)據(jù)集合。
[0033] 在介紹本發(fā)明實(shí)施例中組態(tài)文件的版本兼容方法之前,首先介紹所述組態(tài)文件的 組成:
[0034] 在本發(fā)明實(shí)施例中,將所述組態(tài)文件分為若干個(gè)段(與復(fù)合文檔不同,這里沒(méi)有 Strorage的概念),即所述組態(tài)文件由三個(gè)部分組成:一個(gè)文件頭、至少一個(gè)段數(shù)據(jù)、以及 與每個(gè)段數(shù)據(jù)一一對(duì)應(yīng)的段描述,也就是說(shuō),每個(gè)組態(tài)文件有一個(gè)文件頭,每個(gè)段數(shù)據(jù)都各 自對(duì)應(yīng)有一個(gè)段描述。
[0035] 所述文件頭包括:文件標(biāo)志、文件標(biāo)志位、段數(shù)量、頭部數(shù)據(jù)大小、文件的最后修改 時(shí)間、文件類型、文件版本標(biāo)識(shí)、第一預(yù)留區(qū)域;
[0036] 所述段描述包括:與段數(shù)據(jù)對(duì)應(yīng)的段名稱、段數(shù)據(jù)的校驗(yàn)數(shù)據(jù)、段數(shù)據(jù)偏移量、段 數(shù)據(jù)的標(biāo)志位、第一數(shù)據(jù)段大小、壓縮算法標(biāo)識(shí)、加密算法標(biāo)識(shí)、第二預(yù)留區(qū)域。
[0037] 所述段數(shù)據(jù)包括第二數(shù)據(jù)段大小和數(shù)據(jù)內(nèi)容。
[0038] 其中,所述段數(shù)據(jù)中的第二數(shù)據(jù)段大小為實(shí)際的段數(shù)據(jù)大小,所述段描述中的第 一數(shù)據(jù)段大小為壓縮前的段數(shù)據(jù)大小。
[0039] 參見(jiàn)圖1所示的組態(tài)文件格式示意圖,其中,文件頭大小為64字節(jié),其結(jié)構(gòu)如下:
[0040] 0?3:文件標(biāo)志,即組態(tài)文件的標(biāo)志,比如"SDFF(Supcon Data File Format,中 控?cái)?shù)據(jù)文件格式)";
[0041] 4?7:文件標(biāo)志位,一個(gè)32bit的Flags,目前未使用;
[0042] 8?11:段數(shù)量,32bit整型數(shù)據(jù),用以表示在該SDFF文件中有多少段(段描述或 段數(shù)據(jù)的數(shù)量);
[0043] 12?15:頭部數(shù)據(jù)大小,可選的頭部數(shù)據(jù)大小optional header size,該數(shù)據(jù)緊 接在SDFF文件頭之后,通常為0;
[0044] 16?23:文件的最后修改時(shí)間,F(xiàn)ILETME;
[0045] 24 ?39:文件類型,使用一個(gè) UUID (Universally Unique Identifier,通用唯一識(shí) 別碼)表示;
[0046] 40?43:文件版本標(biāo)識(shí),即SDFF文件內(nèi)部版本標(biāo)識(shí),用于SDFF文件格式本身的前 后兼容;
[0047] 44?63:第一預(yù)留區(qū)域,未使用,保留。
[0048] 在文件頭之后,緊接著的就是段數(shù)據(jù)的描述數(shù)據(jù)即所述段描述(如果optional header size大于0,則在文件頭之后還會(huì)有其指定大小的附加數(shù)據(jù),通常沒(méi)有這部分?jǐn)?shù) 據(jù))。每個(gè)段數(shù)據(jù)的描述數(shù)據(jù)大小為128字節(jié),所有的段數(shù)據(jù)的描述數(shù)據(jù)依次緊密排列,每 個(gè)段數(shù)據(jù)的描述數(shù)據(jù)結(jié)構(gòu)如下:
[0049] 0?63:與某個(gè)段數(shù)據(jù)對(duì)應(yīng)的段名稱,數(shù)據(jù)類型為wchar _t [32];
[0050] 64?79:該段數(shù)據(jù)的校驗(yàn)數(shù)據(jù),為段數(shù)據(jù)的MD5(Message Digest Algorithm MD5, 消息摘要算法第五版)值;
[0051] 80?87;段數(shù)據(jù)偏移量,指示該段數(shù)據(jù)在文件中的偏移,無(wú)符號(hào)64bit;
[0052] 88?95;該段數(shù)據(jù)的標(biāo)志位Flags,用于指示該段是否壓縮、是否加密、是否校驗(yàn) 等特征;
[0053]96?99 :第一數(shù)據(jù)段大小,即該段數(shù)據(jù)的數(shù)據(jù)大小,指示該段用戶數(shù)據(jù)的大小(壓 縮前的大?。?br>
[0054] 100?103:壓縮算法標(biāo)識(shí),由文件創(chuàng)建者定義,用于指示解壓數(shù)據(jù)所用的算法;
[0055] 104?107:加密算法標(biāo)識(shí),由文件創(chuàng)建者定義,用于指示解密數(shù)據(jù)所用的算法;
[0056] 108?127:第二預(yù)留區(qū)域,未使用,保留。
[0057] 在所有的段描述之后,保存的是各個(gè)段的具體數(shù)據(jù)(即所述至少一個(gè)段數(shù)據(jù)),考 慮到10性能問(wèn)題,第一個(gè)段數(shù)據(jù)未必緊跟在最后一個(gè)段描述的后邊。各個(gè)段數(shù)據(jù)的排列順 序也未必和段描述的排列順序一致。其中,每個(gè)段數(shù)據(jù)的前4個(gè)字節(jié)表示該段數(shù)據(jù)的大小 (即所述第二數(shù)據(jù)段大?。?,這個(gè)數(shù)據(jù)大小不包含這4個(gè)字節(jié)本身,這個(gè)數(shù)據(jù)大小和相應(yīng)的 段描述中的第一數(shù)據(jù)段大小可能相同,也可能不同,這個(gè)數(shù)據(jù)的具體大小取決于段數(shù)據(jù)中 的數(shù)據(jù)內(nèi)容是否進(jìn)行了壓縮、加密、字節(jié)對(duì)齊等因素,但無(wú)論如何,它代表了該段數(shù)據(jù)在文 件中的實(shí)際大小。
[0058] 以SUPCON的VisualField軟件為例,其流程圖組態(tài)軟件運(yùn)用了上述SDFF作為其 文件格式,并通過(guò)SDFF的使用作為其組態(tài)應(yīng)用的解決方案。下表為對(duì)應(yīng)文件數(shù)據(jù)實(shí)例:
[0059]表1
[0060]
【權(quán)利要求】
1. 一種組態(tài)文件的版本兼容方法,其特征在于,所述組態(tài)文件包括至少一個(gè)段數(shù)據(jù),所 述段數(shù)據(jù)中的數(shù)據(jù)內(nèi)容以BSON的規(guī)則進(jìn)行數(shù)據(jù)存儲(chǔ);所述方法包括 : 當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第二組態(tài)文件中存在所述 第一組態(tài)文件不涉及的第一數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件忽略所述不涉及的第一數(shù)據(jù)內(nèi) 容,并從所述第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容;其中,所述第一組 態(tài)文件與所述第二組態(tài)文件為不同版本的組態(tài)文件。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于, 當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第一組態(tài)文件中存在所述第 二組態(tài)文件不涉及的第二數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件從所述第二組態(tài)文件的每個(gè)段數(shù) 據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容,并將所述不涉及的第二數(shù)據(jù)內(nèi)容設(shè)置為默認(rèn)值。
3. 根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述組態(tài)文件還包括文件頭、與每個(gè) 段數(shù)據(jù)一一對(duì)應(yīng)的段描述; 所述文件頭包括:文件標(biāo)志、文件標(biāo)志位、段數(shù)量、頭部數(shù)據(jù)大小、文件的最后修改時(shí) 間、文件類型、文件版本標(biāo)識(shí)、第一預(yù)留區(qū)域; 所述段描述包括:與段數(shù)據(jù)對(duì)應(yīng)的段名稱、段數(shù)據(jù)的校驗(yàn)數(shù)據(jù)、段數(shù)據(jù)偏移量、段數(shù)據(jù) 的標(biāo)志位、第一數(shù)據(jù)段大小、壓縮算法標(biāo)識(shí)、加密算法標(biāo)識(shí)、第二預(yù)留區(qū)域。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于, 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被壓縮,則當(dāng)采用第一組態(tài)文件解讀第二組態(tài) 文件時(shí),所述第一組態(tài)文件利用所述壓縮算法標(biāo)識(shí)指示的解壓算法解壓從所述第二組態(tài)文 件中解析出的數(shù)據(jù)內(nèi)容。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于, 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被加密,則當(dāng)采用第一組態(tài)文件解讀第二組態(tài) 文件時(shí),所述第一組態(tài)文件利用所述加密算法標(biāo)識(shí)指示的解密算法解密從所述第二組態(tài)文 件中解析出的數(shù)據(jù)內(nèi)容。
6. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述段數(shù)據(jù)包括第二數(shù)據(jù)段大小和數(shù)據(jù) 內(nèi)容; 所述第二數(shù)據(jù)段大小為實(shí)際的段數(shù)據(jù)大小,所述第一數(shù)據(jù)段大小為壓縮前的段數(shù)據(jù)大 小。
7. -種組態(tài)文件的版本兼容裝置,其特征在于,所述組態(tài)文件包括至少一個(gè)段數(shù)據(jù),所 述段數(shù)據(jù)中的數(shù)據(jù)內(nèi)容以BSON的規(guī)則進(jìn)行數(shù)據(jù)存儲(chǔ);所述裝置包括 : 第一兼容單元,用于當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第二組 態(tài)文件中存在所述第一組態(tài)文件不涉及的第一數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件忽略所述不 涉及的第一數(shù)據(jù)內(nèi)容,并從所述第二組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi) 容;其中,所述第一組態(tài)文件與所述第二組態(tài)文件為不同版本的組態(tài)文件。
8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 第二兼容單元,用于當(dāng)采用第一組態(tài)文件的格式解讀第二組態(tài)文件時(shí),若所述第一組 態(tài)文件中存在所述第二組態(tài)文件不涉及的第二數(shù)據(jù)內(nèi)容,則所述第一組態(tài)文件從所述第二 組態(tài)文件的每個(gè)段數(shù)據(jù)中解析出自身支持的數(shù)據(jù)內(nèi)容,并將所述不涉及的第二數(shù)據(jù)內(nèi)容設(shè) 置為默認(rèn)值。
9. 根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述組態(tài)文件還包括文件頭、與每個(gè) 段數(shù)據(jù)一一對(duì)應(yīng)的段描述; 所述文件頭包括:文件標(biāo)志、文件標(biāo)志位、段數(shù)量、頭部數(shù)據(jù)大小、文件的最后修改時(shí) 間、文件類型、文件版本標(biāo)識(shí)、第一預(yù)留區(qū)域; 所述段描述包括:與段數(shù)據(jù)對(duì)應(yīng)的段名稱、段數(shù)據(jù)的校驗(yàn)數(shù)據(jù)、段數(shù)據(jù)偏移量、段數(shù)據(jù) 的標(biāo)志位、第一數(shù)據(jù)段大小、壓縮算法標(biāo)識(shí)、加密算法標(biāo)識(shí)、第二預(yù)留區(qū)域; 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被壓縮,則當(dāng)所述第一兼容單元或所述第二兼 容單元采用第一組態(tài)文件解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述壓縮算法標(biāo)識(shí) 指示的解壓算法解壓從所述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容; 若所述段數(shù)據(jù)的標(biāo)志位指示所述段數(shù)據(jù)被加密,則當(dāng)所述第一兼容單元或所述第二兼 容單元采用第一組態(tài)文件解讀第二組態(tài)文件時(shí),所述第一組態(tài)文件利用所述加密算法標(biāo)識(shí) 指示的解密算法解密從所述第二組態(tài)文件中解析出的數(shù)據(jù)內(nèi)容。
10. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述段數(shù)據(jù)包括第二數(shù)據(jù)段大小和數(shù)據(jù) 內(nèi)容; 所述第二數(shù)據(jù)段大小為實(shí)際的段數(shù)據(jù)大小,所述第一數(shù)據(jù)段大小為壓縮前的段數(shù)據(jù)大 小。
【文檔編號(hào)】G06F17/30GK104317817SQ201410504267
【公開(kāi)日】2015年1月28日 申請(qǐng)日期:2014年9月26日 優(yōu)先權(quán)日:2014年9月26日
【發(fā)明者】譚彰, 陳吉平, 徐偉強(qiáng), 陳挺 申請(qǐng)人:浙江中控技術(shù)股份有限公司