java的native2ascii.exe使用

 
struts2的國際化實現過程--剛開始寫的時候按照網上說的那樣配置完,結果一測試,亂碼。然後
自己在網上查了很多關於struts2國際化亂碼的文章,寫的都不全面,比如native2ascii.exe在哪裏都沒有說明
後面摸索了一下,終於不亂碼了。
 


第一步--有兩種方法
A、在src下面新建一個struts.properties,加入裏面的內容爲:
struts.custom.i18n.resources=messagesource
其中:struts.custom.i18n.resources爲固定的,
messagesource爲自己定義的

B、struts.xml裏面添加
<constant name="struts.custom.i18n.resources" value="messagesource"></constant>

A、B兩種方法都能達到同樣的效果(我親自測試過)



第二步:
在src下面新建一個messagesource_en_US.properties,其中messagesource爲第一步中自定義的名稱,
加入裏面的內容爲您自己想要的內容,如:
HelloWorld=Hello World!
username = user name


第三步:
在src下面新建一個messagesource_zh_CN.properties,其中messagesource是第一步中自定義的名稱,
加入裏面的內容爲第二步裏面英文翻譯後的中文(其他語言也可以,主要是達到一一對應),如
HelloWorld=您好,世界!
username = 用戶


第四步:
把messagesource_zh_CN.properties重新複製一份並重命名爲messagesource.properties,
把重命名後的messagesource.properties放到web-inf文件下面


第五步:中文轉碼
找到jdk的安裝目錄--D:\Program Files\Java\jdk1.6.0_10\bin(我的安裝目錄)--------cmd進入
在bin裏面找到native2ascii.exe並運行
在命令窗口輸入
D:\jdk1.5.0_06\bin>native2ascii.exe -encoding utf8 abc.txt bcd.txt 
把轉換後的內容替代之前的
命令行格式:
native2ascii.exe -[options] [inputfile [outputfile]]

其中:
  -[options]表示命令開關,有兩個選項可供選擇:
    -reverse:用Latin-1或Unicode編碼把文件轉換成本地編碼格式
    -encoding encoding_name:要把文件轉換的目標編碼
  inputfile:表示輸入文件全名。
  outputfile:輸出文件名。如果缺少此參數,將輸出到控


第六步:在jsp頁面顯示國際化語言--這裏用兩種方法得到國際化語言並顯示
<h2><s:text name="HelloWorld"/></h2>
<h2><s:property value="%{getText('HelloWorld')}"/></h2>

顯示出來的結果是一樣的


第七步:發佈工程,在頁面查看中文是否亂碼,並且更改瀏覽器的語言看能否顯示英文(我上面用的是英文和中文)
如果中文不亂碼,英文也能顯示,說明您測試成功了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章