本發(fā)明涉及領(lǐng)域,尤其涉及一種配置文件的解析方法及裝置。
背景技術(shù):
在配置文件中通常需要配置大量的參數(shù),比如回歸測試中回歸的版本號,case語句執(zhí)行的次數(shù)等都是需要配置的參數(shù),由于測試的需求不斷的變化,導(dǎo)致這些參數(shù)都需要手動的修改,而且會涉及多個(gè)地方的修改。
現(xiàn)有的技術(shù)方案主要是把所有會涉及到的參數(shù)全部保存一個(gè)配置文件中,并使用key(參數(shù)名)=val(參數(shù)值)的方式來描述參數(shù)。
比如,在配置文件中參數(shù)的格式如下:
key1=/test/1.0/sub_1
key2=/test/1.0/dis_0
key3=/test/1.0/sub_1/sub_dir
當(dāng)前的測試版本是1.0,其中大版本號是1,小版本號是0;如果需要修改測試版本,從1.0升級到2.1,則需要手動修改配置文件中的上述內(nèi)容為:
key1=/test/2.1/sub_2
key2=/test/2.1/dis_1
key3=/test/2.1/sub_2/sub_dir
現(xiàn)有技術(shù)方案主要存在如下問題:
一方面,有多個(gè)類似的參數(shù)值如果要修改的話,那么所有涉及到的地方都需要修改,工作量較大,耗時(shí)較多。而且在修改的過程中,如果某個(gè)地方忘記修改則會導(dǎo)致測試的結(jié)果不符合預(yù)期。
另一方面,參數(shù)的描述必須遵守嚴(yán)格的先后順序,否則可能導(dǎo)致出錯(cuò); 比如上例中,key3中的前半部分“/test/1.0/sub_1/”(修改后為“/test/2.1/sub_2/”)即key1,因此key1必須排在key3之前;如果key3排在key1前,由于當(dāng)解析到key3時(shí)key1還沒有解析成功,因此解析key3將發(fā)生失敗。
技術(shù)實(shí)現(xiàn)要素:
本申請能夠集中進(jìn)行相似參數(shù)的修改,減少修改過程中出錯(cuò)的概率。
本申請采用如下技術(shù)方案。
一種配置文件的參數(shù)解析方法,包括:
分別根據(jù)所述配置文件中每個(gè)待解析的第一參數(shù)的參數(shù)名,獲取所述第一參數(shù)的參數(shù)值;
當(dāng)所述第一參數(shù)的參數(shù)值中包含一個(gè)或多個(gè)預(yù)定格式的字段時(shí),分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值,使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段;其中,不同參數(shù)值中的具有相同含義的信息使用同樣的預(yù)定格式的字段表示;將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果。
可選地,所述預(yù)定格式的字段包括:
與預(yù)定符號按照預(yù)定方式組合的字符序列。
可選地,所述分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值包括:
對于每個(gè)預(yù)定格式的字段分別進(jìn)行下述處理:將該預(yù)定格式的字段中的字符序列作為第二參數(shù)的參數(shù)名,根據(jù)所述第二參數(shù)的參數(shù)名獲取所述第二參數(shù)的參數(shù)值,作為所述預(yù)定格式的字段對應(yīng)的設(shè)定值。
可選地,所述將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果包括:
分別判斷每個(gè)所述第一參數(shù)的參數(shù)值經(jīng)過替換后是否仍包含預(yù)定格式的字段;
對于仍包含預(yù)定格式的字段的第一參數(shù)的參數(shù)值,返回所述分別獲取每 個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值,使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段的步驟;
對于不存在預(yù)定格式的字段的第一參數(shù)的參數(shù)值,保存為所述第一參數(shù)的解析結(jié)果。
可選地,所述的方法還包括:
對使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段的次數(shù)進(jìn)行計(jì)數(shù),如果超過預(yù)定的最大替換次數(shù)則進(jìn)行報(bào)錯(cuò)。
一種配置文件的參數(shù)解析裝置,包括:
獲取模塊,用于分別根據(jù)所述配置文件中每個(gè)待解析的第一參數(shù)的參數(shù)名,獲取所述第一參數(shù)的參數(shù)值;
替換模塊,用于當(dāng)所述第一參數(shù)的參數(shù)值中包含一個(gè)或多個(gè)預(yù)定格式的字段時(shí),分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值,使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段;其中,不同參數(shù)值中的具有相同含義的信息使用同樣的預(yù)定格式的字段表示;
存儲模塊,用于將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果。
可選地,所述預(yù)定格式的字段包括:
與預(yù)定符號按照預(yù)定方式組合的字符序列。
可選地,所述替換模塊分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值包括:
所述替換模塊對于每個(gè)預(yù)定格式的字段分別進(jìn)行下述處理:將該預(yù)定格式的字段中的字符序列作為第二參數(shù)的參數(shù)名,根據(jù)所述第二參數(shù)的參數(shù)名獲取所述第二參數(shù)的參數(shù)值,作為所述預(yù)定格式的字段對應(yīng)的設(shè)定值。
可選地,所述存儲模塊將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果包括:
所述存儲模塊分別判斷每個(gè)所述第一參數(shù)的參數(shù)值經(jīng)過替換后是否仍 包含預(yù)定格式的字段;對于仍包含預(yù)定格式的字段的第一參數(shù)的參數(shù)值,返回給所述替換模塊;對于不存在預(yù)定格式的字段的第一參數(shù)的參數(shù)值,保存為所述第一參數(shù)的解析結(jié)果。
可選地,所述的裝置還包括:
檢測模塊,用于對使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段的次數(shù)進(jìn)行計(jì)數(shù),如果超過預(yù)定的最大替換次數(shù)則進(jìn)行報(bào)錯(cuò)。
本申請的至少一個(gè)備選方案中先將配置文件中的參數(shù)值定義為包含預(yù)定格式的字段的形式,并且將不同參數(shù)值中的相同內(nèi)容都定義為同樣的預(yù)定格式的字段,這樣修改時(shí)只需要修改相應(yīng)的預(yù)定格式的字段的值,就能夠使包含該預(yù)定格式的字段的參數(shù)值都完成修改,因此可以減少修改出錯(cuò)的概率。
本申請的又一個(gè)備選方案中對于參數(shù)值會受其它參數(shù)的解析結(jié)果影響的參數(shù)(比如前文例子中,key3的參數(shù)值受key1的解析結(jié)果影響),將該參數(shù)的參數(shù)值中與所述其它參數(shù)解析結(jié)果相關(guān)的部分采用含有所述其它參數(shù)的參數(shù)名的預(yù)定格式的字段表示,從而可以使配置文件中參數(shù)的排列順序不受限制,減少參數(shù)順序問題導(dǎo)致的解析參數(shù)失敗。
本申請的又一個(gè)備選方案通過統(tǒng)計(jì)解析次數(shù),能夠檢查配置參數(shù)是否存在沖突,從而發(fā)現(xiàn)參數(shù)配置錯(cuò)誤的情況。
當(dāng)然,實(shí)施本申請的任一產(chǎn)品必不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
附圖說明
圖1是實(shí)施例一的配置文件的參數(shù)解析方法的流程示意圖;
圖2是實(shí)施例二的配置文件的參數(shù)解析裝置的示意圖。
具體實(shí)施方式
下面將結(jié)合附圖及實(shí)施例對本申請的技術(shù)方案進(jìn)行更詳細(xì)的說明。
需要說明的是,如果不沖突,本申請實(shí)施例以及實(shí)施例中的各個(gè)特征可以相互結(jié)合,均在本申請的保護(hù)范圍之內(nèi)。另外,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
在一個(gè)典型的配置中,客戶端或認(rèn)證系統(tǒng)的計(jì)算設(shè)備可包括一個(gè)或多個(gè)處理器(cpu)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存(memory)。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲器(rom)或閃存(flashram)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。內(nèi)存可能包括模塊1,模塊2,……,模塊n(n為大于2的整數(shù))。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實(shí)現(xiàn)信息存儲。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機(jī)存取存儲器(sram)、動態(tài)隨機(jī)存取存儲器(dram)、其他類型的隨機(jī)存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom),快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitorymedia),如調(diào)制的數(shù)據(jù)信號和載波。
實(shí)施例一、一種配置文件的參數(shù)解析方法,如圖1所示,包括步驟s110~s120。
s110、分別根據(jù)所述配置文件中每個(gè)待解析的第一參數(shù)的參數(shù)名,獲取所述第一參數(shù)的參數(shù)值;
s120、當(dāng)所述第一參數(shù)的參數(shù)值中包含一個(gè)或多個(gè)預(yù)定格式的字段時(shí),分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值,使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段;其中,不同參數(shù)值中的具 有相同含義的信息使用同樣的預(yù)定格式的字段表示;
s130、將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果。
本實(shí)施例中,每個(gè)第一參數(shù)的參數(shù)值中可以包含一個(gè)或多個(gè)預(yù)定格式的字段。如果所述第一參數(shù)的參數(shù)值中不存在預(yù)定格式的字段,則可以直接將第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果。
本實(shí)施例中,當(dāng)存在多個(gè)第一參數(shù)時(shí),在步驟s110中會獲取到相應(yīng)的多個(gè)參數(shù)值;比如第一參數(shù)包括a和b,分別獲取到參數(shù)值val_a和val_b;如果val_a和val_b中都存在預(yù)定格式的字段,則分別進(jìn)行步驟s120后,在步驟s130中,val_a完成替換后保存為a的解析結(jié)果,val_b完成替換后保存為b的解析結(jié)果。
本實(shí)施例中,可以將配置文件中相似內(nèi)容的參數(shù)值都定義為包含預(yù)定格式的字段的形式,相似內(nèi)容的參數(shù)值都可以通過相應(yīng)的預(yù)定格式的字段的值獲得;所述相似內(nèi)容的參數(shù)值是指參數(shù)值中包含一個(gè)或多個(gè)相同含義的信息,相同含義的信息用相同的預(yù)定格式的字段表示;比如前文的例子里,key1、key2和key3對應(yīng)的參數(shù)值中都存在版本信息(包括大版本號和小版本號),因此參數(shù)名key1~key3對應(yīng)的參數(shù)值為相似類容的參數(shù)值,其中的大版本號屬于相同含義的信息,用相同的預(yù)定格式的字段表示;小版本號也屬于相同含義的信息,也用相同的預(yù)定格式的字段表示(但與表示大版本號的預(yù)定格式的字段不同)。
key1、key2和key3對應(yīng)的參數(shù)值可以定義如下:
key1=/test/${max_ver}.${min_ver}/sub_${max_ver}
key2=/test/${max_ver}.${min_ver}/dis_${min_ver}
key3=/test/${max_ver}.${min_ver}/sub_${max_ver}/sub_dir
其中,${max_ver}和${min_ver}即所述預(yù)定格式的字段,分別代表大版本號和小版本號。預(yù)定格式的字段所對應(yīng)的第二參數(shù)值可以設(shè)置和修改,比如本例中,${max_ver}對應(yīng)于“1”,${min_ver}對應(yīng)于“0”。
當(dāng)需要解析key1表示的參數(shù)時(shí),根據(jù)key1獲取到的參數(shù)值為:
/test/${max_ver}.${min_ver}/sub_${max_ver};
其中包括兩個(gè)預(yù)定格式的字段:${max_ver}和${min_ver}。
當(dāng)測試版本為1.0時(shí),根據(jù)${max_ver}獲取的設(shè)定值為“1”,根據(jù)${min_ver}獲取的設(shè)定值為“0”;用“1”替換key1對應(yīng)的參數(shù)值中的${max_ver},用“0”替換key1對應(yīng)的參數(shù)值中的${min_ver},得到key1的解析結(jié)果如下:
key1=/test/1.0/sub_1。
類似地,可以解析得到:
key2=/test/1.0/dis_0;
key3=/test/1.0/sub_1/sub_dir。
當(dāng)測試版本由1.0改為2.1時(shí),本實(shí)施例中只需要修改${max_ver}對應(yīng)的設(shè)定值,及${min_ver}對應(yīng)的設(shè)定值,修改后,根據(jù)${max_ver}獲取的設(shè)定值為“2”,根據(jù)${min_ver}獲取的設(shè)定值為“1”,替換后得到解析結(jié)果:
key1=/test/2.1/sub_2;
key2=/test/2.1/dis_1;
key3=/test/2.1/sub_2/sub_dir。
可以看到,解析結(jié)果中,和版本信息有關(guān)的地方都完成了修改。
可見,在采用本實(shí)施例的方法進(jìn)行解析的情況下,當(dāng)相似內(nèi)容的參數(shù)值需要修改的時(shí)候,只需要修改相應(yīng)的預(yù)定格式的字段的值就能夠使相似內(nèi)容的參數(shù)值都完成修改,這樣只需要修改少數(shù)幾個(gè)值就可以將參數(shù)值中所有變化的部分都自動完成修改,極大地減少修改出錯(cuò)的概率。
本實(shí)施例中,如果根據(jù)預(yù)定格式的字段無法獲得設(shè)定值,則說明對于預(yù)定格式的字段不存在或無法獲取對應(yīng)的設(shè)定值,可以進(jìn)行報(bào)錯(cuò)。
本實(shí)施例中,可以將所述預(yù)定格式的字段看成是全局參數(shù);每個(gè)所述預(yù)定格式的字段及對應(yīng)的設(shè)定值可以保存在全局參數(shù)中心中,在解析時(shí)供查找;所述全局參數(shù)中心可以是在內(nèi)存中劃分出的一塊獨(dú)立區(qū)域。
本實(shí)施例的一種備選方案中,所述預(yù)定格式的字段可以但不限于包括:與預(yù)定符號按照預(yù)定方式組合的字符序列。
本備選方案中,所述分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值可以包括:
對于每個(gè)預(yù)定格式的字段分別進(jìn)行下述處理:將該預(yù)定格式的字段中的字符序列作為第二參數(shù)的參數(shù)名,根據(jù)所述第二參數(shù)的參數(shù)名獲取所述第二參數(shù)的參數(shù)值,作為所述預(yù)定格式的字段對應(yīng)的設(shè)定值。
比如上文的例子中,預(yù)定格式的字段“${max_ver}”中,預(yù)定符號為“${}”,字符序列為“max_ver”,預(yù)定方式為字符序列位于“{}”中。再比如預(yù)定格式的字段為“#max_ver#”,預(yù)定符號為兩個(gè)“#”,字符序列為“max_ver”,預(yù)定方式為字符序列位于兩個(gè)“#”之間。
本備選方案中,所述預(yù)定符號、預(yù)定方式都可以自行設(shè)置,不局限于上述具體示例。當(dāng)然,所述預(yù)定格式的字段也可以為其它形式,只要可以與配置文件中普通的參數(shù)值相區(qū)別即可;比如配置文件中的參數(shù)值最多為6位,那么可以將10位的字符序列作為預(yù)定格式的字段;再比如參數(shù)值中不可能出現(xiàn)某一類字符,那么將含有該類字符的序列作為預(yù)定格式的字段。
本備選方案中,所述字符序列作為參數(shù)名時(shí)所對應(yīng)的參數(shù)值是可以設(shè)置并可以修改的。比如對于上例,相當(dāng)于在測試版本為1.0時(shí),設(shè)置:
max_ver=1;
min_ver=0。
當(dāng)測試版本為2.0時(shí),修改為:
max_ver=2;
min_ver=1。
本備選方案中,所述字符序列可以看成是全局參數(shù)的參數(shù)名,所述字符序列中的字符可以包括數(shù)字、字符和下劃線;可以但不限于將字符序列及其對應(yīng)的參數(shù)值保存在全局參數(shù)中心,可以但不限于保存為map格式。
其它備選方案中,也可以直接將所述預(yù)定格式的字段本身作為參數(shù)名,去獲取參數(shù)值;或者將所述預(yù)定格式的字段按照預(yù)定規(guī)則轉(zhuǎn)換為參數(shù)名,去 獲取參數(shù)值;還可以根據(jù)獲取或保存的預(yù)定格式的字段和設(shè)定值的一一對應(yīng)關(guān)系,獲取預(yù)定格式的字段對應(yīng)的設(shè)定值。
本實(shí)施例的一種備選方案中,所述將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果可以包括:
分別判斷每個(gè)所述第一參數(shù)的參數(shù)值經(jīng)過替換后是否仍包含預(yù)定格式的字段;
對于仍包含預(yù)定格式的字段的第一參數(shù)的參數(shù)值,返回步驟s120;
對于不存在預(yù)定格式的字段的第一參數(shù)的參數(shù)值,保存為所述第一參數(shù)的解析結(jié)果。
本備選方案中,第一參數(shù)的參數(shù)值經(jīng)過替換后仍存在預(yù)定格式的字段的一種可能是:第一參數(shù)的參數(shù)值中所包含的預(yù)定格式的字段里的字符序列為其它參數(shù)的參數(shù)名,且該其它參數(shù)的參數(shù)值里也包括預(yù)定格式的字段。比如上例中,將key3對應(yīng)的參數(shù)值定義如下:
key3=${key1}/sub_dir。
如果key1的定義排列在key3之后,那么先解析到key3,將字符序列“key1”作為第二參數(shù)名得到的參數(shù)值如下:
/test/${max_ver}.${min_ver}/sub_${max_ver};
替換后key3的參數(shù)值為:
key3=/test/${max_ver}.${min_ver}/sub_${max_ver}/sub_dir。
之后將會解析出key1的參數(shù)值并保存解析結(jié)果。
由于key3的參數(shù)值經(jīng)過替換后仍存在預(yù)定格式的字段,因此還需要再進(jìn)行一輪獲取設(shè)定值和替換的操作,而此時(shí)key1的參數(shù)值已經(jīng)解析完成,因此再進(jìn)行一輪獲取設(shè)定值和替換的操作可以得到key3最終的解析結(jié)果。
可見,在本備選方案中,對于參數(shù)值會受其它參數(shù)的解析結(jié)果影響的參數(shù)(比如前文例子中,key3的參數(shù)值受key1的解析結(jié)果影響),將參數(shù)值中與其它參數(shù)解析結(jié)果相關(guān)的部分采用含有所述其它參數(shù)的參數(shù)名的預(yù)定格式的字段表示,從而可以使配置文件中參數(shù)的排列順序不受限制,減少參 數(shù)順序問題導(dǎo)致的解析參數(shù)失敗。
本實(shí)施例的一種備選方案中,還可以包括:
對使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段的次數(shù)進(jìn)行計(jì)數(shù),如果超過預(yù)定的最大替換次數(shù)則進(jìn)行報(bào)錯(cuò)
本備選方案可以對參數(shù)循環(huán)嵌套的情況進(jìn)行報(bào)錯(cuò);所述最大替換次數(shù)可以根據(jù)經(jīng)驗(yàn)值或仿真結(jié)果確定。如果參數(shù)循環(huán)嵌套,比如a的參數(shù)值里包含b,而b的參數(shù)值里也包含a,將會出現(xiàn)無限次的替換。
本備選方案中,可以設(shè)置為:每進(jìn)行一次替換則計(jì)數(shù)值增加1,比如在上文對key1的參數(shù)值進(jìn)行替換的過程中,共進(jìn)行了三次替換。也可以設(shè)置為:對配置文件中所有含有預(yù)定格式的字段的參數(shù)值完成一輪替換后,計(jì)數(shù)值增加1。
其它備選方案中,也可以事先采用其它方式檢查錯(cuò)誤,而不在解析過程中通過計(jì)數(shù)值來判斷是否出錯(cuò);還可以在解析過程中采用計(jì)數(shù)以外的其它方式檢查是否錯(cuò)誤。
本實(shí)施例的一種備選方案中,所述步驟s110前還可以包括:
在內(nèi)存中建立一個(gè)為空的全局參數(shù)中心;
開始解析時(shí),將所有的沒有經(jīng)過解析的參數(shù)名及其對應(yīng)的參數(shù)值都保存到所述全局參數(shù)中心;
本備選方案中,根據(jù)參數(shù)名獲取參數(shù)值時(shí)也是在所述全局參數(shù)中心里進(jìn)行查找;所述解析結(jié)果也將保存到所述全局參數(shù)中心里。其它備選方案中可以不集中保存參數(shù)名和參數(shù)值,只是將相對應(yīng)的參數(shù)名和參數(shù)值關(guān)聯(lián)保存。
實(shí)施例二、一種配置文件的參數(shù)解析裝置,如圖2所示,包括:
獲取模塊21,用于分別根據(jù)所述配置文件中每個(gè)待解析的第一參數(shù)的參數(shù)名,獲取所述第一參數(shù)的參數(shù)值;
替換模塊22,用于當(dāng)所述第一參數(shù)的參數(shù)值中包含一個(gè)或多個(gè)預(yù)定格式的字段時(shí),分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值,使用所獲取 的所述設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段;其中,不同參數(shù)值中的具有相同含義的信息使用同樣的預(yù)定格式的字段表示;
存儲模塊23,用于將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果。
所述獲取模塊21是以上所述裝置中負(fù)責(zé)獲得初始參數(shù)值的部分,可以是軟件、硬件或兩者的結(jié)合。
所述替換模塊22是以上所述裝置中負(fù)責(zé)將參數(shù)值中的預(yù)定格式的字段替換為相應(yīng)內(nèi)容的部分,可以是軟件、硬件或兩者的結(jié)合。
所述存儲模塊23是以上所述裝置中負(fù)責(zé)存儲解析結(jié)果的部分,可以是軟件、硬件或兩者的結(jié)合。
本實(shí)施例的一種備選方案中,所述預(yù)定格式的字段可以包括:
與預(yù)定符號按照預(yù)定方式組合的字符序列。
本備選方案的一種實(shí)施方式中,所述替換模塊分別獲取每個(gè)所述預(yù)定格式的字段對應(yīng)的設(shè)定值可以包括:
所述替換模塊對于每個(gè)預(yù)定格式的字段分別進(jìn)行下述處理:將該預(yù)定格式的字段中的字符序列作為第二參數(shù)的參數(shù)名,根據(jù)所述第二參數(shù)的參數(shù)名獲取所述第二參數(shù)的參數(shù)值,作為所述預(yù)定格式的字段對應(yīng)的設(shè)定值。
本實(shí)施例的一種備選方案中,所述存儲模塊將完成替換的第一參數(shù)的參數(shù)值保存為所述第一參數(shù)的解析結(jié)果可以包括:
所述存儲模塊分別判斷每個(gè)所述第一參數(shù)的參數(shù)值經(jīng)過替換后是否仍包含預(yù)定格式的字段;對于仍包含預(yù)定格式的字段的第一參數(shù)的參數(shù)值,返回給所述替換模塊;對于不存在預(yù)定格式的字段的第一參數(shù)的參數(shù)值,保存為所述第一參數(shù)的解析結(jié)果。
本實(shí)施例的一種備選方案中,所述的裝置還可以包括:
檢測模塊,用于對使用所獲取的設(shè)定值替換所述第一參數(shù)的參數(shù)值中相應(yīng)的預(yù)定格式的字段的次數(shù)進(jìn)行計(jì)數(shù),如果超過預(yù)定的最大替換次數(shù)則進(jìn)行報(bào)錯(cuò)。
所述檢測模塊是以上所述裝置中負(fù)責(zé)檢測錯(cuò)誤的部分,可以是軟件、硬件或兩者的結(jié)合。
其它實(shí)施細(xì)節(jié)可參見實(shí)施例一。
本領(lǐng)域普通技術(shù)人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關(guān)硬件完成,所述程序可以存儲于計(jì)算機(jī)可讀存儲介質(zhì)中,如只讀存儲器、磁盤或光盤等??蛇x地,上述實(shí)施例的全部或部分步驟也可以使用一個(gè)或多個(gè)集成電路來實(shí)現(xiàn)。相應(yīng)地,上述實(shí)施例中的各模塊/單元可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。本申請不限制于任何特定形式的硬件和軟件的結(jié)合。
當(dāng)然,本申請還可有其他多種實(shí)施例,在不背離本申請精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本申請作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本申請的權(quán)利要求的保護(hù)范圍。