W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
啟用代碼檢查以突出顯示硬編碼字符串文字后,您可以繼續(xù)將這些文字解壓縮到屬性文件中。為此,IntelliJ IDEA 提供特殊意圖行為 i18nize 硬編碼字符串文本。
本節(jié)考慮兩種訪問(wèn)資源包的可能方法:
tip:您可以跳過(guò)此步驟,并在 I18nize 硬編碼字符串對(duì)話框中立即指定所需的資源包表達(dá)式。
指定將用于存儲(chǔ)提取的文字的資源包。特別地,您可以將以下語(yǔ)句添加到您的源代碼中:
private static ResourceBundle <field name> =
getBundle("<bundle name>");
例如:
private static ResourceBundle myBundle =
getBundle("com.intellij.fontChooser.FontChooser");
如果 ResourceBundle 字段已在源代碼中聲明(如步驟1所示),則 IntelliJ IDEA 在默認(rèn)情況下建議它的名稱。如果您尚未在源代碼中聲明此字段,您仍然可以在對(duì)話框中立即定義所需的表達(dá)式。為此,請(qǐng)?jiān)?"資源包表達(dá)式" 字段中輸入 ResourceBundle 類型的有效表達(dá)式。
注意:基本代碼完成在該字段中工作。鍵入類名,并按下 Ctrl+Space ,選擇方法:
從建議列表中選擇所需的方法,然后再按 Ctrl+Space 一次以填寫括號(hào):
之后,在引號(hào)中鍵入包和資源包名稱:
如果在對(duì)話框中定義了資源包,結(jié)果將是:
redist/annotations.jar
歸檔文件被添加到模塊依賴關(guān)系中。import org.jetbrains.annotations.PropertyKey;
import org.jetbrains.annotations.NonNls;
import java.util.ResourceBundle;
import java.text.MessageFormat;
public class I18nSupport {
@NonNls
private static final ResourceBundle bundle = ResourceBundle.getBundle ("com.intellij.FontChooser");
public static String i18n_str
(@PropertyKey(resourceBundle ="com.intellij.FontChooser")
String key,Object... params){
String value =bundle.getString(key);
if (params.length >0) return MessageFormat.format(value, params);
return value;
}
}
點(diǎn)擊 "編輯 i18n 模板鏈接"。在 "文件模板" 對(duì)話框中,將 I18nized 表達(dá)式更改為指向自定義資源包類的方法:
這個(gè)更改是全局性的,并且會(huì)影響所有項(xiàng)目!
點(diǎn)擊“確定”,保存更新的模板并關(guān)閉對(duì)話框。
有時(shí)你可能想隱藏硬編碼的文字。要這樣做,使用不需要國(guó)際化注釋。
annotations.xml
文件將被存儲(chǔ)的位置 。或者,您可以添加 @NonNls 注釋:
如果您選中該復(fù)選框以后不顯示此對(duì)話框,則您仍然可以在“設(shè)置”對(duì)話框中選擇注釋樣式(代碼樣式 |Java 代碼生成)。
您的源代碼可以包含您想要識(shí)別的硬編碼字符串,并進(jìn)一步提取到屬性。要在編輯器中突出顯示硬編碼的文字,請(qǐng)使用國(guó)際化代碼檢查。
請(qǐng)注意,您可以配置此檢查的嚴(yán)重性,并指定何時(shí)應(yīng)識(shí)別硬編碼的字符串。例如,您可以選擇跳過(guò)toString()
方法的內(nèi)容,或沒(méi)有字母字符的文字。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: