欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

多語(yǔ)言版本的開(kāi)發(fā)、替換方法及裝置的制作方法

文檔序號(hào):6469217閱讀:172來(lái)源:國(guó)知局
專利名稱:多語(yǔ)言版本的開(kāi)發(fā)、替換方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的 方法和裝置, 一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法及裝置。
背景技術(shù)
隨著科學(xué)技術(shù)的發(fā)展以及經(jīng)濟(jì)全球化的逐步形成,信息技術(shù)
(Information Technology, IT)業(yè)務(wù)產(chǎn)品的國(guó)際化問(wèn)題已經(jīng)漸漸提上日程,即逐 漸需要IT業(yè)務(wù)產(chǎn)品支持多種國(guó)家與地區(qū)的語(yǔ)言,如何更好地解決IT業(yè)務(wù)產(chǎn)品的 國(guó)際化問(wèn)題是人們關(guān)注與研究的熱點(diǎn)。
現(xiàn)有技術(shù)中,實(shí)現(xiàn)支持國(guó)際化多語(yǔ)言的過(guò)程中,需要開(kāi)發(fā)人員手工地逐個(gè)從 源代碼文件中提取需要進(jìn)行替換的代碼信息,此過(guò)程是一個(gè)人工純體力操作過(guò) 程,容易出現(xiàn)人為的錯(cuò)誤,造成遺漏等問(wèn)題,而且一旦造成遺漏后需要花費(fèi)更 大的測(cè)試流程進(jìn)行彌補(bǔ),另外需要開(kāi)發(fā)人員手工地逐個(gè)將需要進(jìn)行替換的代碼 信息進(jìn)行替換,并手工地記錄整理所述要進(jìn)行替換的代碼信息與替換內(nèi)容的對(duì) 應(yīng)關(guān)系,耗費(fèi)大量的人力,不能在短時(shí)間內(nèi)推出產(chǎn)品的多語(yǔ)言版本。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例在于提供一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法及裝 置, 一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法及裝置,解決了手工搜索提取以及替換 代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題。
為了達(dá)到上述技術(shù)效果,本發(fā)明實(shí)施例提出了 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn) 代碼替換的方法,該方法包括如下步驟
遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼;
對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;
根據(jù)所述配置的配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言代碼 替換成所述替換內(nèi)容。
5相應(yīng)的,本發(fā)明實(shí)施例還公開(kāi)了一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法,其特
征在于,包括如下步驟
遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;
根據(jù)所述配置的配置結(jié)果,自動(dòng)將所述源代碼文件中所述第一語(yǔ)言代碼替 換成所述替換內(nèi)容;
并根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容與至少 一種語(yǔ)言版 本代碼的替換映射關(guān)系;
至少 一種語(yǔ)言版本代碼,并保存所述替換后生成的源代碼文件。
相應(yīng)的,本發(fā)明實(shí)施例還公開(kāi)了 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝
置,其特征在于,包括
遍歷模塊,用于遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 內(nèi)容配置模塊,用于對(duì)所述遍歷模塊搜索出的第一語(yǔ)言代碼配置替換內(nèi)容; 內(nèi)容替換模塊,用于根據(jù)所述內(nèi)容配置模塊的配置結(jié)果,自動(dòng)將所述源代
碼文件中的所述第 一語(yǔ)言代碼替換成所述替換內(nèi)容。
相應(yīng)的,本發(fā)明實(shí)施例還公開(kāi)了一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的裝置,其特
征在于,包括
遍歷模塊,用于遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 內(nèi)容配置模塊,用于對(duì)所述遍歷模塊搜索出的第一語(yǔ)言代碼配置替換內(nèi)容; 替換模塊,用于根據(jù)所述內(nèi)容配置模塊的配置結(jié)果,自動(dòng)將所述源代碼文
件中的所述第 一語(yǔ)言代碼替換成所述替換內(nèi)容;
文件配置模塊,用于根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容
與至少一種語(yǔ)言版本代碼的替換映射關(guān)系;
文件替換模塊,用于根據(jù)所述文件配置模塊配置的資源文件將所述源代碼
文件中的所述替換內(nèi)容替換成所述至少一種語(yǔ)言版本代碼,并保存所述替換后
生成的源代碼文件。
實(shí)施本發(fā)明實(shí)施例,通過(guò)遍歷源代碼文件,自動(dòng)搜索出所有需要進(jìn)行替換
的第一語(yǔ)言代碼信息,并為所述第一語(yǔ)言代碼配置替換內(nèi)容,根據(jù)配置結(jié)果自
動(dòng)將所述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容,解 了手工搜索提取以及替換代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題。


為了更清楚地說(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ù)這些附圖獲得其他的附圖。
圖1是本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法第一實(shí)施例的流程
圖2是本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法實(shí)施例的流程圖; 圖3是本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法流程圖; 圖4是本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置的第一實(shí)施例的結(jié) 構(gòu)示意圖5是本發(fā)明實(shí)施例的遍歷模塊的結(jié)構(gòu)示意圖; 圖6是本發(fā)明實(shí)施例的配置模塊的結(jié)構(gòu)示意圖7是本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置的實(shí)施例的結(jié)構(gòu)示 意圖8是本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
本發(fā)明實(shí)施例提供了 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法和裝置, 一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法和裝置及一種計(jì)算機(jī)可讀介質(zhì),通過(guò)遍歷源 代碼文件,自動(dòng)搜索出所有需要進(jìn)行替換的第一語(yǔ)言代碼信息,并為所述第一 語(yǔ)言代碼配置替換內(nèi)容,根據(jù)配置結(jié)果自動(dòng)將所述源代碼文件中的所述第一語(yǔ) 言代碼替換成所述替換內(nèi)容,解決了手工搜索提取以及替換代碼而造成的遺漏, 耗費(fèi)大量人力的問(wèn)題,并使產(chǎn)品完成國(guó)際化的流程更加方便快捷,更加靈活地 滿足海外運(yùn)營(yíng)商對(duì)當(dāng)?shù)卣Z(yǔ)言的支持需求。
請(qǐng)參閱圖1,圖1示出了本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼j昏換的方法第 一實(shí)施例的流程圖,包括如下步驟步驟S101:遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 具體地,所述第一語(yǔ)言代碼可為中文代碼、英文代碼、日文代碼,法文代
碼等。所述源代碼文件可為JSP源代碼文件、Java源代碼文件以及C十+語(yǔ)言源
代碼文件等中任一種或者其結(jié)合。
步驟S102:對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;
具體地,所述配置替換內(nèi)容可包括為所述搜索出的第一語(yǔ)言代碼中的每
一代碼設(shè)置替換內(nèi)容;生成數(shù)據(jù)庫(kù)存儲(chǔ)所述替換內(nèi)容與所述第一語(yǔ)言代碼的替
XML靜態(tài)函數(shù)),比如,當(dāng)需要替換JSP源代碼文件中的中文代碼時(shí),所述替 換內(nèi)容可以為STRUTS的替換標(biāo)簽〈bean:messageke""標(biāo)簽"/>,生成的替換 映射關(guān)系可為標(biāo)簽=第一語(yǔ)言代碼。
例如,JSP源代碼文件中的"中國(guó),,,對(duì)應(yīng)的替換標(biāo)簽可為〈bean:message key= "CN"。生成的替換映射關(guān)系可為CN二中國(guó);
JSP源代碼中的"查找,,,對(duì)應(yīng)的替換標(biāo)簽可為〈bean:messageke尸"search"。 生成的替換映射關(guān)系可為searcl^查找。
當(dāng)需要替換C十+或Java等源代碼文件的代碼時(shí),所述配置的替換內(nèi)容可以 為某個(gè)類的靜態(tài)函數(shù),如CMessage::GetMessage ( LAN—FLACV,標(biāo)簽")。
步驟S103:根據(jù)所述配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言 代碼替換成所述替換內(nèi)容。比如,原來(lái)界面上有一個(gè)按^組叫"確定",那么在JSP 源代碼中寫(xiě)為〈inpuUype-"button"valuey確定",對(duì)應(yīng)所述"確定"的替換標(biāo)簽 可為〈bean:messagekey=,buttoncaption,>",貝寸將所述中文確定替換成成替換內(nèi)容 后, 戶斤述源、4戈石馬變成〈input type="button" value="<bean:message key=,buttoncaption,>"。
上述實(shí)施例,通過(guò)遍歷源代碼文件,自動(dòng)搜索出所有需要進(jìn)行替換的第一 語(yǔ)言代碼信息,并為所述第一語(yǔ)言代碼配置替換內(nèi)容,根據(jù)配置結(jié)果自動(dòng)將所 述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容,解決了手工搜索提 取以及替換代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題。
下面結(jié)合一個(gè)JSP為源代碼的中文版本的產(chǎn)品實(shí)現(xiàn)支持國(guó)際化多語(yǔ)言的例 子,進(jìn)一步詳細(xì)說(shuō)明本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法,如圖2 示出的本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法實(shí)施例的流程圖,包括如下步驟
步驟S201:遍歷系統(tǒng)中的文件夾,搜索出需要進(jìn)行語(yǔ)言版本替換的JSP源 代碼文件;
具體i也,系統(tǒng)可以利用Windows Application Programming Interface, 簡(jiǎn)稱 WindowsAPI函數(shù)遍歷系統(tǒng)中的文件夾,搜索出需要進(jìn)行替換的源代碼文件,如 JSP源代碼文件、C+十語(yǔ)言源代碼文件等。
步驟S202:遍歷所述搜索出的JSP源代碼文件中的代碼,在所述源代碼文 件的代碼中查找出不在特殊字符之間的代碼;
具體地,將所述;&索出的JSP源代碼文件中的代碼分解成每行進(jìn)行查找處 理,所述特殊字符包括注釋符號(hào)和/或字符串符號(hào)等,所述注釋字符包括雙斜杠 符號(hào)(即"〃,,符號(hào))以及"/*,,符號(hào)等,所述字符串符號(hào)包括單引符號(hào)以及雙 引符號(hào)等,所述不在特殊字符之間的代碼即為有效執(zhí)行代碼,在所述源代碼文 件的代碼中查找出不在所述特殊字符之間的代碼,即為在所述源代碼文件的代 碼中查找出除了注釋代碼和/或字符串代碼等之外的有效執(zhí)行代碼。
步驟S203:檢測(cè)所述查找出的代碼中是否含有中文字符;
具體地,如果是中文字符則其高位數(shù)據(jù)為大于128,則整個(gè)int值在表現(xiàn)為 <0,當(dāng)所述檢測(cè)結(jié)果為是時(shí),執(zhí)行步驟S204,當(dāng)所述檢測(cè)結(jié)果為否時(shí),執(zhí)行步 驟S207。
步驟S204:記錄所述^r測(cè)的所有中文字符對(duì)應(yīng)的代碼信息;
具體地,所述代碼信息包括代碼類型(標(biāo)簽、表頭、按鈕、對(duì)畫(huà)框、冒泡
等)代碼內(nèi)容、文件名以及所述代碼內(nèi)容在所述文件中的行號(hào)等,分別記錄代
碼的類型,代碼中各中文字符對(duì)應(yīng)的中文內(nèi)容,所述中文字符所在的文件夾的
名稱以及所述中文字符所在的文件的行號(hào)等。
步驟S205:對(duì)所述中文字符配置STRUTS ^f各式的替換標(biāo)簽;
具體地,以原來(lái)界面上的一個(gè)叫"確定"的按鈕為例進(jìn)行說(shuō)明,JSP源代碼
中的形式為4nputtype^'button" value二"確定",對(duì)其中的中文字符(即確定)配
置的替換標(biāo)簽可為〈bean:message key=,buttoncaption,>。
步驟S206:根據(jù)所述替換標(biāo)簽將所述中文字符替換成所述替換標(biāo)簽。 具體地,以上述的原來(lái)界面上的一個(gè)叫"確定"的按鈕為例進(jìn)行說(shuō)明,把
JSP源代碼〈input type="button" value^,確定"中的中文字符替換成所述替換標(biāo)
9簽,那么替換后的JSP源代Z馬形式為<input type="button" value="<bean:message key=,buttoncaption,>"。
需要說(shuō)明的是,執(zhí)行步驟S202時(shí),具體地,需要針對(duì)搜索出的文件進(jìn)行逐 行逐字的解析,可以預(yù)先定義中文開(kāi)關(guān)和預(yù)先為單引號(hào)、雙引號(hào)、"〃"符號(hào)以 及"/*"符號(hào)等分別定義標(biāo)識(shí)開(kāi)關(guān),并定義每一個(gè)標(biāo)識(shí)開(kāi)關(guān)打開(kāi)之后等待該開(kāi)關(guān) 關(guān)閉之前,其他的標(biāo)識(shí)開(kāi)關(guān)不允許打開(kāi)(即某一種特殊字符之間出現(xiàn)的其他特 殊字符將會(huì)被忽略),在所有標(biāo)識(shí)開(kāi)關(guān)都關(guān)閉的情況下,標(biāo)識(shí)當(dāng)前的代碼是有效 執(zhí)行代碼,另外,針對(duì)很大一部分的中文字符是出現(xiàn)在引號(hào)當(dāng)中的情況,開(kāi)發(fā) 人員可以設(shè)定引號(hào)的標(biāo)識(shí)開(kāi)關(guān)打開(kāi)的情況下,也標(biāo)識(shí)當(dāng)前的代碼是有效執(zhí)行代 碼。標(biāo)識(shí)出有效執(zhí)行代碼后,查找所述有效執(zhí)行代碼的中文字符,當(dāng)檢測(cè)到中 文字符,則所述中文開(kāi)關(guān)打開(kāi),檢測(cè)到中文字符結(jié)束,則中文開(kāi)關(guān)關(guān)閉,并記 錄中文開(kāi)關(guān)打開(kāi)和關(guān)閉時(shí)的代碼位置,最后通過(guò)記錄的代碼位置信息輸出所述 位置中的中文字符。
特殊地,在JSP頁(yè)面中的對(duì)于一些特殊字符的特殊處理一般分為如下幾中 情況
1、 <%...%>的情況,<%...%>中的中文字符不能用標(biāo)簽進(jìn)行替換,因?yàn)檫@中 間的代碼是在服務(wù)端執(zhí)行的,所以替換方式應(yīng)該和現(xiàn)有中對(duì)的Java源代碼的替 換方案保持統(tǒng)一。對(duì)于這種情況本發(fā)明是通過(guò)設(shè)定進(jìn)行二次替換來(lái)處理,即對(duì) 于JSP文件的替換首先不考慮<%...%〉的情況,通過(guò)本發(fā)明實(shí)施例的統(tǒng)一替換之 后,JSP文件的HTML語(yǔ)句和JS腳本中的中文信息已經(jīng)一皮〈bean:message key=" "/〉的標(biāo)簽替換完畢了 ,然后在設(shè)定的進(jìn)行二次替換的時(shí)候只針對(duì)<%...%>
中的內(nèi)容進(jìn)行替換。上述替換操:作可以在控制界面中"i殳置復(fù)選框來(lái)進(jìn)行控制。
2、 &油8口;的情況,如"中&nbsp;文",按照正常的邏輯當(dāng)文件的分析到&符 號(hào)時(shí),文件分析接口會(huì)認(rèn)為中文結(jié)束,最后導(dǎo)致"中&nbsp;文"被分割為兩段 中文信息,因此可以判斷組合字符串&nbsp;,通過(guò)預(yù)先設(shè)定組合字符串&nbsp; 的情況,當(dāng)在中文開(kāi)關(guān)打開(kāi)的期間出現(xiàn)組合字符串&1^8^不#見(jiàn)為中文結(jié)束。
3、 "English中文english"的情況,所述English與english泛指非中文字符, 此情況需要通過(guò)規(guī)則來(lái)進(jìn)行設(shè)置,如果預(yù)設(shè)需要提取"中文",則選擇進(jìn)行引號(hào) 部分提取,如果預(yù)設(shè)需要提取"English中文english",則選擇進(jìn)行引號(hào)全量提 取,所述引號(hào)全量提取表示只要引號(hào)中出現(xiàn)中文則整段引號(hào)部分都視為中文進(jìn)
10行資源提取。
需要說(shuō)明的是,執(zhí)行步驟S206時(shí),具體地,如果按照關(guān)鍵字直接進(jìn)行替換 的話,會(huì)存在因?yàn)樽址嬖诎P(guān)系而出現(xiàn)錯(cuò)誤的替換的問(wèn)題,比如系統(tǒng)檢 索出需要替換中文信息"集團(tuán)屬性,,以及"集團(tuán)",那么就必須要保證替換"集 團(tuán)屬性"的時(shí)候不要單獨(dú)替換掉"集團(tuán)屬性"中的集團(tuán)的字符,否則"集團(tuán)屬 性,,就會(huì)被替換成〈bean:messagekey^,,,,/〉屬性的形式,而不是開(kāi)發(fā)人員希望的 把"集團(tuán)屬性,,替換成〈bean:messageke",,,,^的形式,從而造成了搜索和替換 不統(tǒng)一。為了解決上述出現(xiàn)的替換問(wèn)題,提高替換的準(zhǔn)確性,執(zhí)行替換的步驟 前,可以重新對(duì)文件進(jìn)行分析,然后執(zhí)行替換的步驟,即在步驟S205后,重新 執(zhí)行步驟S201到步驟S203,完成對(duì)文件的代碼的重新分析,然后直接執(zhí)行步驟 S206,具體地,重新執(zhí)行完步驟S203后,即再次遍歷搜索出的中文代碼后,系
息一致,如果所述4企測(cè)的結(jié)果不一致,即上述兩次搜索出的中文不相同,則結(jié) 束流程,如果所述檢測(cè)的結(jié)果一致,則執(zhí)行步驟S206,把搜索出的需要進(jìn)行替 換的代碼根據(jù)之前的步驟S205配置的替換內(nèi)容進(jìn)行替換,避免了按照關(guān)鍵字直 接進(jìn)行替換出現(xiàn)的替換問(wèn)題,提高搜索和替換的準(zhǔn)確性。
需要說(shuō)明的是,本發(fā)明實(shí)施例的步驟還包括,在文件替換的最后一步判斷 JSP中是否存在"<%@ taglib uri=7WEB-INF/struts-bean.tld" prefix="bean" %>,,, 如果不存在,則自動(dòng)為程序添加上述代碼行至文件頭中。
下面結(jié)合圖3示出的本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法流程圖, 說(shuō)明本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法,包括如下步驟
步驟S301:遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 步驟S302:對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容; 步驟S303:根據(jù)所述配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言 代碼替換成所述替換內(nèi)容。
步驟S304:根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容與至少一 種語(yǔ)言版本代碼的替換映射關(guān)系;具體地,以一個(gè)JSP為源代碼的中文版本的 產(chǎn)品實(shí)現(xiàn)支持國(guó)際化多語(yǔ)言(,至少兩種,比如,可包括中文版本,英文版本 日文版本等)為例子,JSP標(biāo)簽的資源文件可定義在struts-config.xml文件中, 才各式i口下<message-resources parameter="resources.Application—CN.properties"/>。在所述資源文件中,將所述多種語(yǔ)言版本的代碼與所述配置的相應(yīng)的替換格
式內(nèi)容的對(duì)應(yīng)關(guān)系按照標(biāo)簽=value的格式進(jìn)行輸出,如中文版本與所述替換內(nèi) 容的替換映射關(guān)系為
group AttrConfigMainFrame」sp.ProdType-產(chǎn)品類型
groupProdTypeAttrListJ sp.PropSho wType二屬性顯示類型
英文版本與所述替換內(nèi)容的替換映射關(guān)系為
groupAttrConfigMainFrame」'sp.ProdType=stufftype
groupAttrConfigMainFrame」'sp.ProdType=configtype
步驟S305: #4居所述配置的資源文件將所述源代碼文件中的所述替換內(nèi)容 替換成所述至少一種語(yǔ)言版本代碼,并保存所述替換后生成的源代碼文件。具 體實(shí)現(xiàn)中,可將所述替換后生成的源代碼文件保存在內(nèi)存相應(yīng)文件中,拷貝到 STUTS架構(gòu)resources.Application—CN.properties文件中。也可將源代碼存放在系 統(tǒng)運(yùn)行時(shí),可訪問(wèn)的硬盤(pán)會(huì)外部存儲(chǔ)介質(zhì)中。
下面結(jié)合圖4示出的本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置的第 一實(shí)施例的結(jié)構(gòu)示意圖,說(shuō)明本發(fā)明實(shí)施例中的一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代 碼替換的裝置,包括
遍歷模塊40,用于遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 具體地,所述第一語(yǔ)言代碼可為中文代碼、英文代碼、日文代碼,法文代碼等。 所述源代碼文件可為JSP源代碼文件、Java源代碼文件以及0++語(yǔ)言源代碼文 件中任一種。
內(nèi)容配置模塊42,用于對(duì)所述遍歷模塊40搜索出的第一語(yǔ)言代碼配置替換 內(nèi)容;具體地,所述替換內(nèi)容可為STRUTS替換標(biāo)簽或自定義的替換內(nèi)容(比 如,XML靜態(tài)函數(shù))。
內(nèi)容替換模塊44,用于根據(jù)所述內(nèi)容配置模塊42配置的配置結(jié)果,自動(dòng)將 所述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容。比如,原來(lái)界面 上有一個(gè)按鈕叫"確定,,,那么在JSP源代碼中寫(xiě)為〈inputtype-"button"value二" 確定",對(duì)應(yīng)所述"確定"的替換標(biāo)簽可為〈bean:messageke",buttoncaption,〉", 則所述內(nèi)容替換模塊44將所述中文"確定"替換成成替換內(nèi)容后,所述源代碼 變成〈input type="button" value=,,<bean:message key=,buttoncaption,>,,。
上述實(shí)施例,通過(guò)遍歷源代碼文件,自動(dòng)搜索出所有需要進(jìn)行替換的第一語(yǔ)言代碼信息,并為所述第一語(yǔ)言代碼配置替換內(nèi)容,根據(jù)配置結(jié)果自動(dòng)將所 述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容,解決了手工搜索提 取以及替換代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題,并且使產(chǎn)品完成國(guó)際化 的流程更加方便快捷,更加靈活地滿足海外運(yùn)營(yíng)商對(duì)當(dāng)?shù)卣Z(yǔ)言的支持需求。
需要說(shuō)明的是,本發(fā)明實(shí)施例的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置還
可以包括遍歷文件夾模塊,所述遍歷文件夾模塊可以利用Windows Application Programming Interface ,簡(jiǎn)稱Windows API函數(shù)遍歷系統(tǒng)中的文件夾,搜索出需 要進(jìn)行替換的源代碼文件,如JSP源代碼文件、。++語(yǔ)言源代碼文件等,然后供 遍歷模塊40進(jìn)行遍歷,從所述需要進(jìn)行替換的源代碼文件中搜索出需要進(jìn)行替 換的第一語(yǔ)言代碼。
下面結(jié)合圖5示出的本發(fā)明實(shí)施例的遍歷模塊40的結(jié)構(gòu)示意圖,進(jìn)一步詳 細(xì)說(shuō)明本發(fā)明實(shí)施例的 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置,遍歷模塊 40包括
查找模塊401 ,用于在所述源代碼文件中查找出不在特殊字符之間的代碼, 所述特殊字符包括注釋符號(hào)和/或字符串符號(hào);比如當(dāng)源代碼為JSP源代碼時(shí), 所述查找模塊401將所述搜索出的JSP源代碼文件中的代碼分解成每行進(jìn)行查 找處理,所述特殊字符包括注釋符號(hào)和/或字符串符號(hào)等,所述注釋字符包括雙 斜杠符號(hào)(即"〃"符號(hào))以及"/*,,符號(hào)等,所述字符串符號(hào)包括單引符號(hào)以 及雙引符號(hào)等,所述不在特殊字符之間的代碼即為有效執(zhí)行代碼,在所述源代 碼文件的代碼中查找出不在所述特殊字符之間的代碼,即為在所述源代碼文件 的代碼中查找出除了注釋代碼和/或字符串代碼等之外的有效執(zhí)行代碼。
檢測(cè)處理模塊403,用于在所述查找模塊401查找出的代碼中檢測(cè)并找出需 要進(jìn)行替換的第 一語(yǔ)言代碼。
下面結(jié)合圖6示出的本發(fā)明實(shí)施例的內(nèi)容配置模塊42的結(jié)構(gòu)示意圖,進(jìn)一 步詳細(xì)說(shuō)明本發(fā)明實(shí)施例的 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置,內(nèi)容 配置沖莫塊42包括
設(shè)置模塊421,用于為所述搜索出的第一語(yǔ)言代碼中的每一代碼設(shè)置替換內(nèi)
容;
存儲(chǔ)模塊423,用于生成數(shù)據(jù)庫(kù)存儲(chǔ)所述替換內(nèi)容與所述第一語(yǔ)言代碼的替 換映射關(guān)系。比如,當(dāng)需要替換JSP源代碼文件中的中文代碼時(shí),所述替換內(nèi)容可以為 STRUTS的替換標(biāo)簽〈bean:messageke""標(biāo)簽"/>,生成的替換映射關(guān)系可為 標(biāo)簽=第一語(yǔ)言代碼。
例如,JSP源代碼文件中的"中國(guó)",所述設(shè)置模塊421設(shè)置的替換標(biāo)簽可 為〈bean:messageke尸"CN"。所述存儲(chǔ)模塊423生成的替換映射關(guān)系可為CN= 中國(guó);
JSP源代碼中的"查找",所述設(shè)置模塊421設(shè)置的替換標(biāo)簽可為 〈bean:message key= "search"。所述存儲(chǔ)才莫塊423生成的替換映射關(guān)系可為 search^查找。
下面結(jié)合圖7示出的本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置的實(shí) 施例的結(jié)構(gòu)示意圖,進(jìn)一步詳細(xì)說(shuō)明本發(fā)明實(shí)施例中的一種多語(yǔ)言版本開(kāi)發(fā)中 實(shí)現(xiàn)代碼替換的裝置,除了包括上述的遍歷模塊40、內(nèi)容配置模塊42以及內(nèi)容 替換模塊44以外,還包括
記錄模塊46,用于記錄所述遍歷模塊40搜索出的需要進(jìn)行替換的第一語(yǔ)言 代碼的具體內(nèi)容及其在所述源代碼中的位置信息。所述具體內(nèi)容及位置信息包 括包括代碼類型(標(biāo)簽、表頭、按鈕、對(duì)畫(huà)框、冒泡等)代碼內(nèi)容、文件名 以及所述代碼內(nèi)容在所述文件中的行號(hào)等,分別記錄代碼的類型,代碼中各中 文字符對(duì)應(yīng)的中文內(nèi)容,所述中文字符所在的文件夾的名稱以及所述中文字符 所在的文件的行號(hào)等。
下面結(jié)合一個(gè)JSP為源代碼的中文版本的產(chǎn)品實(shí)現(xiàn)支持國(guó)際化多語(yǔ)言的例 子,進(jìn)一步詳細(xì)說(shuō)明本發(fā)明的多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置的功能以 及結(jié)構(gòu)
遍歷模塊40中的查找模塊401在搜索出的源代碼文件的代碼中查找出不在 特殊字符之間的代碼,所述特殊字符包括注釋符號(hào)和/或字符串符號(hào)等,所述注 釋字符包括雙斜杠符號(hào)(即"〃"符號(hào))以及"/*"符號(hào)等,所述字符串符號(hào)包 括單引符號(hào)以及雙引符號(hào)等,所述不在特殊字符之間的代碼即為有效執(zhí)行代碼, 在所述源代碼文件的代碼中查找出不在所述特殊字符之間的代碼,即為在所述 源代碼文件的代碼中查找出除了注釋代碼和/或字符串代碼等之外的有效執(zhí)行代 碼;具體地,需要針對(duì)搜索出的文件進(jìn)行逐行逐字的解析,可以預(yù)先定義中文 開(kāi)關(guān)和預(yù)先為單引號(hào)、雙引號(hào)、"〃,,符號(hào)以及7*,,符號(hào)等分別定義標(biāo)識(shí)開(kāi)關(guān),
14并定義每一個(gè)標(biāo)識(shí)開(kāi)關(guān)打開(kāi)之后等待該開(kāi)關(guān)關(guān)閉之前,其他的標(biāo)識(shí)開(kāi)關(guān)不允許打開(kāi)(即某一種特殊字符之間出現(xiàn)的其他特殊字符將會(huì)被忽略),在所有標(biāo)識(shí)開(kāi)關(guān)都關(guān)閉的情況下,標(biāo)識(shí)當(dāng)前的代碼是有效執(zhí)行代碼,另外,針對(duì)很大一部分的中文字符是出現(xiàn)在引號(hào)當(dāng)中的情況,開(kāi)發(fā)人員可以設(shè)定引號(hào)的標(biāo)識(shí)開(kāi)關(guān)打開(kāi)的情況下,也標(biāo)識(shí)當(dāng)前的代碼是有效執(zhí)行代碼。標(biāo)識(shí)出有效執(zhí)行代碼后,查找所述有效執(zhí)行代碼的中文字符,當(dāng)檢測(cè)到中文字符,則所述中文開(kāi)關(guān)打開(kāi),檢測(cè)到中文字符結(jié)束,則中文開(kāi)關(guān)關(guān)閉,并記錄中文開(kāi)關(guān)打開(kāi)和關(guān)閉時(shí)的代碼位置,最后通過(guò)記錄的代碼位置信息輸出所述位置中的中文字符。
特殊地,在JSP頁(yè)面中的對(duì)于一些特殊字符的特殊處理一般分為如下幾中情況
1、 <%...%>的情況,<%...%>中的中文字符不能用標(biāo)簽進(jìn)行替換,因?yàn)檫@中間的代碼是在服務(wù)端執(zhí)行的,所以替換方式應(yīng)該和現(xiàn)有中對(duì)的Java源代碼的替換方案保持統(tǒng)一。對(duì)于這種情況本發(fā)明是通過(guò)設(shè)定進(jìn)行二次替換來(lái)處理,即對(duì)于JSP文件的替換首先不考慮<%...%>的情況,通過(guò)本發(fā)明實(shí)施例的統(tǒng)一替換之后,JSP文件的HTML語(yǔ)句和JS腳本中的中文信息已經(jīng)被〈bean:messagekey=" "/>的標(biāo)簽替換完畢了 ,然后在設(shè)定的進(jìn)行二次替換的時(shí)候只針對(duì)<%...%>中的內(nèi)容進(jìn)行替換。上述替換操作可以在控制界面中設(shè)置復(fù)選框來(lái)進(jìn)行控制。
2、 (&nbsp;的情況,如"中&nbsp;文",按照正常的邏輯當(dāng)文件的分析到&符號(hào)時(shí),文件分析接口會(huì)認(rèn)為中文結(jié)束,最后導(dǎo)致"中&nbsp;文"被分割為兩段中文信息,因此可以判斷組合字符串&nbsp;,通過(guò)預(yù)先設(shè)定組合字符串&nbsp;的情況,當(dāng)在中文開(kāi)關(guān)打開(kāi)的期間出現(xiàn)組合字符串(&nbsp;不視為中文結(jié)束。
3、 "English中文english,,的情況,所述English與english泛指非中文字符,此情況需要通過(guò)規(guī)則來(lái)進(jìn)行設(shè)置,如果預(yù)設(shè)需要提取"中文",則選擇進(jìn)行引號(hào)部分提取,如果預(yù)設(shè)需要提取"English中文english",則選擇進(jìn)行引號(hào)全量提取,所述引號(hào)全量提取表示只要引號(hào)中出現(xiàn)中文則整段引號(hào)部分都視為中文進(jìn)行資源提取。
遍歷模塊40中的檢測(cè)處理模塊403檢測(cè)所述查找模塊401查找出的代碼中是否含有中文字符,當(dāng)檢測(cè)處理模塊403的檢測(cè)結(jié)果為是時(shí),觸發(fā)記錄模塊46記錄所述檢測(cè)處理模塊4032檢測(cè)的所有中文字符對(duì)應(yīng)的代碼信息,具體地,所述代碼信息包括代碼內(nèi)容、文件名以及所述代碼內(nèi)容在所述文件中的行號(hào),分
15別記錄代碼中各中文字符對(duì)應(yīng)的中文內(nèi)容,所述中文字符所在的文件夾的名稱,所述中文字符所在的文件的行號(hào)。
內(nèi)容配置模塊42對(duì)所述檢測(cè)處理模塊403檢測(cè)的中文字符配置替換標(biāo)簽,具體地,配置的替換標(biāo)簽的模式為預(yù)先設(shè)置的替換邏輯的模式,如開(kāi)發(fā)人員預(yù)先設(shè)置的替換邏輯的模式為〈bean:messageke"" "/>,以原來(lái)界面上的一個(gè)叫"確定"的按鈕為例進(jìn)行說(shuō)明,代碼中的形式為<input type="button" value—確定",對(duì)其中的中文字符(即確定)配置〈bean:message ke",buttoncaption、的替換標(biāo)簽。
內(nèi)容替換模塊44根據(jù)內(nèi)容配置模塊42配置的替換標(biāo)簽自動(dòng)將所述中文字符替換成所述替換標(biāo)簽,具體地,以上述的原來(lái)界面上的一個(gè)叫"確定"的按鈕為例進(jìn)行說(shuō)明,把〈input type="button" value-"確定"中的中文字符替換成所述^孚:換標(biāo)簽,那么替4炎后的形式為<input type="button" value="<bean:messagekey=,buttoncaption,〉,,。
需要說(shuō)明的是,內(nèi)容替換模塊44執(zhí)行替換時(shí),如果按照關(guān)鍵字直接進(jìn)行替換的話,會(huì)存在因?yàn)樽址嬖诎P(guān)系而出現(xiàn)錯(cuò)誤的替換的問(wèn)題,比如系統(tǒng)檢索出需要替換中文信息"集團(tuán)屬性"以及"集團(tuán)",那么就必須要保證替換"集團(tuán)屬性"的時(shí)候不要單獨(dú)替換掉"集團(tuán)屬性"中的集團(tuán)的字符,否則"集團(tuán)屬性,,就會(huì)被替換成〈bean:messagekey^,,,/〉屬性的形式,而不是開(kāi)發(fā)人員希望的把"集團(tuán)屬性"替換成〈bean:messageke"",》的形式,從而造成了搜索和替換不統(tǒng)一。為了解決上述出現(xiàn)的替換問(wèn)題,提高替換的準(zhǔn)確性,內(nèi)容替換模塊44執(zhí)行替換前,可以重新觸發(fā)遍歷模塊40對(duì)文件再次進(jìn)行分析,再次遍歷搜索出的第一語(yǔ)言代碼后,可以檢測(cè)所述再次遍歷搜索出的第 一語(yǔ)言代碼是否與記錄模塊46記錄的代碼信息一致,如果所述檢測(cè)的結(jié)果不一致,即遍歷模塊40兩次搜索出的第一語(yǔ)言代碼不相同,則結(jié)束流程,如果所述檢測(cè)的結(jié)果一致,則根據(jù)之前內(nèi)容配置模塊42配置的替換內(nèi)容進(jìn)行替換,避免了按照關(guān)鍵字直接進(jìn)行替換出現(xiàn)的替換問(wèn)題,提高搜索和替換的準(zhǔn)確性。
下面結(jié)合圖8示出的本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的裝置的結(jié)構(gòu)示意圖,說(shuō)明本發(fā)明實(shí)施例的實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的裝置,除了包括上述的遍歷模塊40、內(nèi)容配置模塊42、內(nèi)容替換模塊44以及記錄模塊46外,還包括
文件配置模塊48,用于根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容與至少一種語(yǔ)言版本代碼的替換映射關(guān)系;
文件替換模塊50,用于根據(jù)所述文件配置^莫塊48配置的資源文件將所述源代碼文件中的所述替換內(nèi)容替換成所述至少一種語(yǔ)言版本代碼,并保存所述替換后生成的源代碼文件。
具體地,以一個(gè)JSP為源代碼的中文版本的產(chǎn)品實(shí)現(xiàn)支持國(guó)際化多語(yǔ)言(,至少兩種,比如,可包括中文版本,英文版本日文版本等)為例子,JSP標(biāo)簽的資源文件可定義在struts-config.xml文件中,格式如下<message-resourcesparameter="resources.Application—CN.properties" /〉。在所述資源文件中,將所述多種語(yǔ)言版本的代碼與所述配置的相應(yīng)的替換格式內(nèi)容的對(duì)應(yīng)關(guān)系按照標(biāo)簽=value的格式進(jìn)行輸出,如中文版本與所述替換內(nèi)容的替換映射關(guān)系為
groupAttrConfigMainFrame」'sp.ProdType-產(chǎn)品類型
groupProdTypeAttrList」'sp.PropShowType二屬性顯示類型
英文版本與所述替換內(nèi)容的替換映射關(guān)系為
group AttrConfigMainFrameJ sp .ProdType=stufftype
groupAttrConfigMainFrame」'sp.ProdType=configtype
具體實(shí)現(xiàn)中,可將所述替換后生成的源代碼文件保存在內(nèi)存相應(yīng)文件中,拷貝到STUTS架構(gòu)resources.Application_CN.properties文件中。也可將源代碼存放在系統(tǒng)運(yùn)行時(shí),可訪問(wèn)的硬盤(pán)會(huì)外部存儲(chǔ)介質(zhì)中。
綜上所述,實(shí)施本發(fā)明實(shí)施例,通過(guò)遍歷源代碼文件,自動(dòng)搜索出所有需要進(jìn)行替換的第一語(yǔ)言代碼信息,并為所述第一語(yǔ)言代碼配置替換內(nèi)容,根據(jù)配置結(jié)果自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容,解決了手工搜索提取以及替換代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題。
需要說(shuō)明的是,通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以全部通過(guò)硬件來(lái)實(shí)施?;谶@樣的理解,本發(fā)明的技術(shù)方案對(duì)背景技術(shù)做出貢獻(xiàn)的全部或者部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在
存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
以上所揭露的僅為本發(fā)明實(shí)施例中的較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1、一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法,其特征在于,包括如下步驟遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼;對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;根據(jù)所述配置的配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容。
2、 如權(quán)利要求l所述的方法,其特征在于,所述搜索出需要進(jìn)行替換的第 一語(yǔ)言代碼包括在所述源代碼文件中查找出不在特殊字符之間的代碼,所述特殊字符包括 注釋符號(hào)和/或字符串符號(hào);在所述查找出的代碼中檢測(cè)并找出需要進(jìn)行替換的第 一語(yǔ)言代碼。
3、 如權(quán)利要求l所述的方法,其特征在于,所述對(duì)所述搜索出的第一語(yǔ)言 代碼配置替換內(nèi)容之前,還包括記錄所述搜索出的需要進(jìn)行替換的第 一語(yǔ)言代碼的具體內(nèi)容及其在所述源 代碼中的位置信息。
4、 如權(quán)利要求1所述的方法,其特征在于,所述對(duì)所述搜索出的第一語(yǔ) 言代碼配置替換內(nèi)容包括為所述搜索出的第 一語(yǔ)言代碼中的每一代碼設(shè)置替換內(nèi)容; 生成數(shù)據(jù)庫(kù)存儲(chǔ)所述替換內(nèi)容與所述第 一語(yǔ)言代碼的替換映射關(guān)系。
5、 如權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述配置結(jié)果,自動(dòng) 將所述源代碼文件中的所述第 一語(yǔ)言代碼替換成所述替換內(nèi)容包括再次遍歷源代碼文件,搜索出需要進(jìn)行替換的第一國(guó)家語(yǔ)音代碼; 根據(jù)所述數(shù)據(jù)庫(kù)中所述替換內(nèi)容與所述第一語(yǔ)言代碼的替換映射關(guān)系,自 動(dòng)將所述源代碼文件中的所述第 一 國(guó)家語(yǔ)音代碼替換成所迷替換內(nèi)容。
6、 如權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述數(shù)據(jù)庫(kù)中所述替 換內(nèi)容與所述第一語(yǔ)言代碼的替換映射關(guān)系,自動(dòng)將所述源代碼文件中的所述 第一國(guó)家語(yǔ)音代碼替換成所述替換內(nèi)容包括檢測(cè)所述再次遍歷搜索出的需要進(jìn)行替換的第一語(yǔ)言代碼及其位置是否與 所述記錄的代碼相同;根據(jù)所述數(shù)據(jù)庫(kù)中所述替換內(nèi)容與所述第一語(yǔ)言代碼的替換映射關(guān)系,自 動(dòng)將所述源代碼中與所述記錄的代碼信息及位置相同的第 一語(yǔ)言代碼替換成所 述替換內(nèi)容。
7、 如權(quán)利要求1-6中任一項(xiàng)所述的方法,其特征在于,所述替換內(nèi)容為 STRUTS替換標(biāo)簽或自定義的替換內(nèi)容。
8、 如權(quán)利要求l-6所述的方法,其特征在于,所述源代碼文件為JSP源代 碼文件、Java源代碼文件以及C十+語(yǔ)言源代碼文件中任一種。
9、 一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法,其特征在于,包括如下步驟 遍歷源代碼文件,搜索出需要進(jìn)行替換的第 一語(yǔ)言代碼; 對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;根據(jù)所述配置的配置結(jié)果,自動(dòng)將所述源代碼文件中所述第一語(yǔ)言代碼替 換成所述替換內(nèi)容;并根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容與至少 一種語(yǔ)言版 本代碼的替換映射關(guān)系;根據(jù)所述配置的資源文件將所述源代碼文件中的所述替換內(nèi)容替換成所述 至少一種語(yǔ)言版本代碼,并保存所述替換后生成的源代碼文件。
10、 一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的裝置,其特征在于,包括 遍歷模塊,用于遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼;內(nèi)容配置模塊,用于對(duì)所述遍歷模塊搜索出的第一語(yǔ)言代碼配置替換內(nèi)容; 內(nèi)容替換模塊,用于根據(jù)所述內(nèi)容配置模塊的配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第 一語(yǔ)言代碼替換成所述替換內(nèi)容。
11、 如權(quán)利要求IO所述的裝置,其特征在于,所述遍歷模塊包括 查找模塊,用于在所述源代碼文件中查找出不在特殊字符之間的代碼,所述特殊字符包括注釋符號(hào)和/或字符串符號(hào);檢測(cè)處理模塊,用于在所述查找模塊查找出的代碼中檢測(cè)并找出需要進(jìn)行 替換的第一語(yǔ)言代碼。
12、 如權(quán)利要求IO所述的裝置,其特征在于,所述裝置還包括 記錄模塊,用于記錄所述遍歷模塊搜索出的需要進(jìn)行替換的第一語(yǔ)言代碼的具體內(nèi)容及其在所述源代碼中的位置信息。
13、 如權(quán)利要求IO所述的裝置,其特征在于,所述內(nèi)容配置模塊包括 設(shè)置模塊,用于為所述搜索出的第 一語(yǔ)言代碼中的每一代碼設(shè)置替換內(nèi)容; 存儲(chǔ)^t塊,用于生成tt據(jù)庫(kù)存儲(chǔ)所述替換內(nèi)容與所述第一語(yǔ)言代碼的替換映射關(guān)系。
14、 一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的裝置,其特征在于,包括 遍歷模塊,用于遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼; 內(nèi)容配置模塊,用于對(duì)所述遍歷模塊搜索出的第一語(yǔ)言代碼配置替換內(nèi)容; 內(nèi)容替換模塊,用于根據(jù)所述內(nèi)容配置模塊的配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第 一語(yǔ)言代碼替換成所述替換內(nèi)容;文件配置模塊,用于根據(jù)所述替換內(nèi)容配置資源文件,建立所述替換內(nèi)容 與至少一種語(yǔ)言版本代碼的替換映射關(guān)系;文件替換模塊,用于根據(jù)所述文件配置模塊配置的資源文件將所述源代碼 文件中的所述替換內(nèi)容替換成所述至少一種語(yǔ)言版本代碼,并保存所述替換后 生成的源代碼文件。
15、 一種計(jì)算機(jī)可讀介質(zhì),其特征在于,其內(nèi)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì) 算機(jī)程序運(yùn)行時(shí)可使得一個(gè)或多個(gè)處理器執(zhí)行如權(quán)1或權(quán)9所述的方法。
全文摘要
本發(fā)明實(shí)施例公開(kāi)了一種多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法和裝置,一種實(shí)現(xiàn)多語(yǔ)言版本的開(kāi)發(fā)的方法及裝置,以及一種計(jì)算機(jī)可讀介質(zhì)。其中,所述多語(yǔ)言版本開(kāi)發(fā)中實(shí)現(xiàn)代碼替換的方法,包括如下步驟遍歷源代碼文件,搜索出需要進(jìn)行替換的第一語(yǔ)言代碼;對(duì)所述搜索出的第一語(yǔ)言代碼配置替換內(nèi)容;根據(jù)所述配置結(jié)果,自動(dòng)將所述源代碼文件中的所述第一語(yǔ)言代碼替換成所述替換內(nèi)容。本發(fā)明實(shí)施例解決了手工搜索提取以及替換代碼而造成的遺漏,耗費(fèi)大量人力的問(wèn)題。
文檔編號(hào)G06F9/44GK101667118SQ200810198258
公開(kāi)日2010年3月10日 申請(qǐng)日期2008年9月2日 優(yōu)先權(quán)日2008年9月2日
發(fā)明者斌 游 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
忻城县| 原平市| 洛南县| 长汀县| 澄江县| 徐汇区| 皮山县| 崇左市| 合作市| 安达市| 蒙山县| 华宁县| 三原县| 松阳县| 治县。| 政和县| 滕州市| 文登市| 延寿县| 镇原县| 宜宾市| 西城区| 城口县| 井陉县| 盐山县| 阳朔县| 新竹县| 通化县| 会泽县| 开化县| 渝中区| 太原市| 桓台县| 铜山县| 六安市| 博湖县| 甘孜| 龙游县| 石景山区| 汉中市| 临高县|