文本文件编码

如果插件读取文本文件,则它应遵循工作台中的文本文件编码首选项。

根据平台和语言环境,以不同方式编写文本文件。大多数情况下, 对主机操作系统的语言环境使用缺省文本文件编码就足够了。但是, 用户可能想要使用来自另一个源的文本文件。考虑到在网络小组环境中使用 Eclipse 能力,用户当然可能想要使用这样的文本文件,这些文本文件使用不同于本地编码模式的编码模式, 以便可以与另一小组很容易地交换文件。

因此,工作台定义它自已的编码概要文件,该概要文件由用户在首选项对话框中指定。 解释文本文件的插件(如编辑器和构建器)应查看工作台编码首选项, 而不是假定正在使用安装的操作系统编码。

可以使用 ResourcesPlugin.getEncoding() 从资源插件获取当前编码首选项。应将此编码传送至 java.io 阅读器, 而不是使用缺省系统编码。

如果需要跟踪此首选项的更改,则可以将侦听器 hook 在 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();
}

 

Copyright IBM Corp. and others 2000,2002.