问题描述
我写了一个Eclipse插件来建立一个新的Java项目,该项目中包含了每次创建新项目时所需的文件,库和其他内容。 现在,我还要设置“文本文件编码= UTF-8”和“新文本文件delimiter = Unix”。
对于“文本文件编码”,我这样做是:
IProject project = ...
project.setDefaultCharset("UTF-8",null)
然后在Project-> Properties-> Resource中将其设置为UTF-8。
我的问题: 但是我找不到一个IProject-Method,它允许我对“文本文件定界符”执行相同的操作。 org.eclipse.core也可以这样做吗?
解决方法
这只是在首选项值中设置的。
此代码位于org.eclipse.ui.internal.ide.LineDelimiterEditor
中,它使用:
String val = ... line separator ...
Preferences node = Platform.getPreferencesService().getRootNode().node(ProjectScope.SCOPE)
.node(project.getName()).node(Platform.PI_RUNTIME);
node.put(Platform.PREF_LINE_SEPARATOR,val);
node.flush();
注意:由于这是内部类,因此不能保证所有发行版中的版本都相同。