文字檔編碼

如果您的外掛程式讀取文字檔,應該在工作台中出現文字檔編碼喜好設定。

依平台和語言環境,文字檔的編碼會有所不同。大部分的時間, 對主機作業系統的語言環境使用預設的文字檔編碼已足夠。然而, 使用者可能想使用源自於另一個來源的文字檔。 在網路團隊環境中提供使用平台的能力,使用者當然可能想使用不同編碼方法的文字檔, 而非他們的原生編碼方法,這樣一來可更易於與其他團隊交換檔案。

基於這個原因,工作台自行定義在喜好設定對話框中使用者所指定的編碼設定檔。 使用者可以在一般 > 編輯器 喜好設定頁面中選擇可用的編碼選項,或輸入他們自己的編碼。解譯文字檔的外掛程式,如編輯器和建置器, 應該參閱工作台編碼喜好設定,而不是假設使用已安裝的作業系統編碼。

您可以取得編碼喜好設定,方法是使用 ResourcesPlugin.getEncoding()。 這個編碼應傳遞至 java.io 讀取器,取代使用預設的系統編碼。如果您需要追蹤對這個喜好設定的變更,可以在 ResourcesPlugin 喜好設定中連結接聽器並反應 ResourcesPlugin.PREF_ENCODING 中的變更。 下列範例來自預設的文字編輯器:

public void initialize(StatusTextEditor textEditor) {
	
	fTextEditor= textEditor;
	
	fPropertyChangeListener= new Preferences.IPropertyChangeListener() {
		public void propertyChange(Preferences.PropertyChangeEvent e) {
			if (ResourcesPlugin.PREF_ENCODING.equals(e.getProperty()))
				setEncoding(null, false);
		}
	};
		
	Preferences p= ResourcesPlugin.getPlugin().getPluginPreferences();
	p.addPropertyChangeListener(fPropertyChangeListener);
	
	fEncodingActionGroup= new EncodingActionGroup(fTextEditor);
	fEncodingActionGroup.update();
}

使用者也可以在編輯器的編輯 > 編碼功能表中,變更特殊檔案的編碼。 如果您正在開啟的編輯器中操作文字, 您應該改用 IEncodingSupport.getEncoding(), 以便取得特殊編輯器的編碼。下列範例顯示如何從編輯器取得這個資訊:

IEncodingSupport encodingSupport = (IEncodingSupport) editor.getAdapter(IEncodingSupport.class);
String encoding = encodingSupport.getEncoding();