Java國際化和本地化Toolkit2.0
table border="0" bgcolor="#666699" > 簡介
全球化的Internet需要全球化的軟件。全球化軟件,意味著同一種版本的產品能夠容易地適用于不同地區的市場。就開發者所關心的,軟件的全球化意味著國際化和本地化。Java語言“一次編寫,隨處運行”。它已經具有國際化和本地化的特征和API。盡管Java開發工具為國際化和本地化的工作提供了一些基本的類,但還是有一些對于Java應用程序的本地化和國際化來說較困難的工作, 例如:消息獲取、編碼轉換,顯示布局和數字、日期、貨幣的格式等。如果我們僅用手工來完成國際化和本地化的工作,這些工作將花費大量的時間和資源。這個Java國際化和本地化ToolKit(Java I18n/L10n ToolKit)是一個加快Java應用程序國際化和本地化開發的工具集。它將大大減少國際化和本地化開發的所消耗的時間和資源。
Toolkit 2.0工具概述
Toolkit 2.0結構介紹
Toolkit 2.0之特點介紹
Toolkit 2.0功能描述
這個工具集包括五個部分: 項目管理器 能定義一個項目來管理所有的java源文件及與它們相關的資源文件。
國際化檢驗工具 能在policies文件的幫助下,完成java國際化和本地化有效性的驗證并生成報告。
國際化消息生成工具 能定義resource bundles, 轉換和獲取消息, 在不同的locale下產生resource bundle文件, 凍結所有的不需要國際化的消息項。所有在國際化檢驗工具中的 茉詿斯ぞ咧卸及ā?br>
資源處理工具 能合并和區分不同的resources,轉換resource bundle(ListResourceBundle, PropertyResourceBundle)的類型,轉換resource 文件的編碼(從本地編碼到Unicode)。
翻譯器 能在字典或可重用資源的幫助下翻譯 resources。
如圖一所示。
易于使用
此工具集是Java應用程序國際化和本地化開發的集成開發環境。開發人員能夠在GUI風格下交互地完成國際化和本地化的開發,或在命令行的風格下自動地完成該功能。 友好的用戶界面和文檔
此工具集的GUI方式是以Swing components為基礎的。用戶手冊和幫助文檔都有提供。在線幫助可以從GUI方式獲得。在所有工具的GUI方式中都提供一個編輯器。 可配置性
此工具集能夠通過在GUI下設置特性來配置,或通過直接編輯特性文件來配置。 自動處理性
國際化有效性的驗證,消息獲取和消息翻譯能夠自動完成。 可插入式
有一些API是為把該工具集提供到其它IDE或SDK工具中而提供的。用戶定義的 resource bundle, 用戶定義的字典和可重用的消息能夠被插入到該工具集中。 JDK 支持
Java 2 SDK 被優先推薦。
jdk1.1.7或更新的和Swing 1.1
該工具集是為加速Java應用程序的國際化和本地化開發的的集成開發環境。該工具集包括一個項目管理器和四個工具: 國際化檢驗工具, 國際化消息生成工具, 資源處理工具, 和翻譯器。每個工具都有圖形界面,并提供一個編輯工具。 這個編輯工具提供所有的編輯java源文件的功能,如:復制、剪切、粘貼、恢復、重做、查詢、替換和轉至等。 它能夠在詞法分析器的幫助下,根據java的語義,以不同的顏色顯示源文件中的語句。 國際化檢驗工具,國際化消息生成工具, 和翻譯器也能在命令行下運行。 項目管理器 它是一個項目的管理器,它能夠管理一些java源文件和與它們相關的不同的locales的resource bundles。一個項目的結構保存在一個特性文件中。通過激活項目管理器中的特定的工具,任意一個源文件和資源文件都能被處理。當一個resource bundle文件被更新或為文件產生時,項目管理器將被特定的工具自動通知。項目管理器提供一個GUI工具,以配置項目的特性文件,例如工作目錄和輸出目錄等。它也能在圖形界面方式下,直接調用這些工具(這些工具也可以被分別請求),如圖2所示。
國際化檢驗工具
這是為java應用程序做國際化驗證的工具。此驗證工具能檢查java源文件,發現所有與國際化相關的項并產生一個報告作為結果。根據特性文件中的設置,這個報告可以是 文本文件或HTML文件。在報告中,所有與國際化相關的項都被列出。每一項的細節信息包括:源文件名、項的位置,相關的源字符串、項的狀態、項的類型,國際化建議等等。有幾個層次的項目狀態: ERROR, WARNING, NOTSURE, FROZEN, NOTE, FINISHED. 有幾種項目類型:String, Bundle name, Resource bundle, Retrieve method, 和Locale sensitive method. 如圖3所示:
Policy 文件作為驗證的規則來使用。有兩種類型的policy文件:系統policy文件和用戶定義policy文件。兩種Policy文件的格式是一樣的。在系統policy文件中,有一些普通的policy被用作缺省值。在用戶定義policy文件中,用戶能夠客戶化它們自己的policies。在policy中的一個規則是應該包括:這種規則的類型(構造函數或方法), 參數的數目,該規則的項的類型(與上面提到的項的類型一樣)、該規則的項的狀態(與上面提到的項的類型一樣),對該項的建議和參數的原型。 此驗證器在GUI方式和命令行方式都可以運行。在GUI方式下,它一次僅能處理一個文件,而在命令行方式下,它同時能處理多個文件和目錄。當處理多文件時,它能只產生一個報告文件,或分別生成報告文件。
國際化消息生成工具
這是一個用來做特殊消息國際化工作的工具。它能夠轉換、不轉換、凍結、不凍結一個源文件中的消息項。它能在源文件中定義一個resource bundle并為它自動產生一個resource bundle。它能夠識別信息連接并為它自動產生一個消息格式。它不僅支持resource bundles的缺省類型如ListResourceBundle和PropertyResourceBundle,而且也支持由TDC 定義的,擴展的resource bundles ArrayResourceBundle和其它用戶定義的resource bundles。
源文件中的每個消息項能夠被轉換成一個項,在這個項中,消息能夠根據關鍵字(缺省的原始字符串)從resource bundle中提取出來。這個用來提取消息的關鍵字也可以在轉換的時候由用戶定義。如圖4所示。
該工具也涉及I18n Verifier 的GUI方式下的大部分功能。它重新利用I18n Verifier的結果。
在命令行狀態下,該工具能轉換所有的狀態是ERROR的消息項并自動生成一個resource bundle文件。它是一個做國際化工作的工具。
資源處理工具
該工具用來轉換resource bundles類型和resource bundle文件的格式的。它能夠合并和區分兩個不同的resource bundles文件。它能在ListResourceBundle, PropertyResourceBundle和ArrayResourceBundle之間轉換resource bundles的類型。 并對不同的文件編碼進行轉換,從本地編碼到Unicode或從Unicode到本地編碼,如圖5所示。
翻譯器
該工具和resource tool是用來做本地化工作的。它能夠在一些字典、可再利用的resource bundles和消息數據庫(可能)的幫助下,把resource bundles中的消息翻譯成本地語言的消息。此工具提供一個缺省的英漢字典。如果有為字典橋安裝的界面,其它的字典或消息數據庫也能在此工具中使用。如圖6所示。
此工具能夠把resource bundle輸出到其它locale并用Unicode保存此resource bundle文件。它也能夠在命令行方式下運行,把所有的消息值轉換成能夠和可重新利用的resource bundles或消息數據庫自動匹配的local 語言的消息。
全球化的Internet需要全球化的軟件。全球化軟件,意味著同一種版本的產品能夠容易地適用于不同地區的市場。就開發者所關心的,軟件的全球化意味著國際化和本地化。Java語言“一次編寫,隨處運行”。它已經具有國際化和本地化的特征和API。盡管Java開發工具為國際化和本地化的工作提供了一些基本的類,但還是有一些對于Java應用程序的本地化和國際化來說較困難的工作, 例如:消息獲取、編碼轉換,顯示布局和數字、日期、貨幣的格式等。如果我們僅用手工來完成國際化和本地化的工作,這些工作將花費大量的時間和資源。這個Java國際化和本地化ToolKit(Java I18n/L10n ToolKit)是一個加快Java應用程序國際化和本地化開發的工具集。它將大大減少國際化和本地化開發的所消耗的時間和資源。
Toolkit 2.0工具概述
Toolkit 2.0結構介紹
Toolkit 2.0之特點介紹
Toolkit 2.0功能描述
概述 |
這個工具集包括五個部分:
結構 |
如圖一所示。
圖一 Java 國際化和本地化工具集結構 |
特點 |
此工具集是Java應用程序國際化和本地化開發的集成開發環境。開發人員能夠在GUI風格下交互地完成國際化和本地化的開發,或在命令行的風格下自動地完成該功能。
此工具集的GUI方式是以Swing components為基礎的。用戶手冊和幫助文檔都有提供。在線幫助可以從GUI方式獲得。在所有工具的GUI方式中都提供一個編輯器。
此工具集能夠通過在GUI下設置特性來配置,或通過直接編輯特性文件來配置。
國際化有效性的驗證,消息獲取和消息翻譯能夠自動完成。
有一些API是為把該工具集提供到其它IDE或SDK工具中而提供的。用戶定義的 resource bundle, 用戶定義的字典和可重用的消息能夠被插入到該工具集中。
Java 2 SDK 被優先推薦。
jdk1.1.7或更新的和Swing 1.1
功能描述 |
該工具集是為加速Java應用程序的國際化和本地化開發的的集成開發環境。該工具集包括一個項目管理器和四個工具: 國際化檢驗工具, 國際化消息生成工具, 資源處理工具, 和翻譯器。每個工具都有圖形界面,并提供一個編輯工具。 這個編輯工具提供所有的編輯java源文件的功能,如:復制、剪切、粘貼、恢復、重做、查詢、替換和轉至等。 它能夠在詞法分析器的幫助下,根據java的語義,以不同的顏色顯示源文件中的語句。 國際化檢驗工具,國際化消息生成工具, 和翻譯器也能在命令行下運行。
圖2 項目管理器 |
圖3 國際化檢驗工具 |
Policy 文件作為驗證的規則來使用。有兩種類型的policy文件:系統policy文件和用戶定義policy文件。兩種Policy文件的格式是一樣的。在系統policy文件中,有一些普通的policy被用作缺省值。在用戶定義policy文件中,用戶能夠客戶化它們自己的policies。在policy中的一個規則是應該包括:這種規則的類型(構造函數或方法), 參數的數目,該規則的項的類型(與上面提到的項的類型一樣)、該規則的項的狀態(與上面提到的項的類型一樣),對該項的建議和參數的原型。 此驗證器在GUI方式和命令行方式都可以運行。在GUI方式下,它一次僅能處理一個文件,而在命令行方式下,它同時能處理多個文件和目錄。當處理多文件時,它能只產生一個報告文件,或分別生成報告文件。
源文件中的每個消息項能夠被轉換成一個項,在這個項中,消息能夠根據關鍵字(缺省的原始字符串)從resource bundle中提取出來。這個用來提取消息的關鍵字也可以在轉換的時候由用戶定義。如圖4所示。
圖4 國際化消息生成工具 |
該工具也涉及I18n Verifier 的GUI方式下的大部分功能。它重新利用I18n Verifier的結果。
在命令行狀態下,該工具能轉換所有的狀態是ERROR的消息項并自動生成一個resource bundle文件。它是一個做國際化工作的工具。
圖5 資源處理工具 |
圖6 翻譯器 |
此工具能夠把resource bundle輸出到其它locale并用Unicode保存此resource bundle文件。它也能夠在命令行方式下運行,把所有的消息值轉換成能夠和可重新利用的resource bundles或消息數據庫自動匹配的local 語言的消息。