从EditorReference获取源文件?

时间:2012-11-25 00:43:42

标签: java eclipse-plugin

在我的eclipse插件中,我有一个CompilationUnitEditor的EditorReference对象,其中显示了我的源文件。现在,我如何从CompilationUnitEditor获取此源文件?

2 个答案:

答案 0 :(得分:1)

调用编辑器上的getEditorInput()以获取IEditorInput个对象。编辑器有多种可能的输入(源文件),但如果它是一个文件,那么返回的值也将是IFileEditorInput,它有一个方法getFile(),它返回对源文件的引用。

IFile ifile = ((IFileEditorInput) myEditor.getEditorInput()).getFile();

答案 1 :(得分:1)

而不是IFileEditorInput的简单类型转换使用IEditorInput扩展IAdapter的事实。因此你得到了

IFile ifile = (IFile) myEditor.getEditorInput().getAdapter(IFile.class);

这适用于IFileEditorInput,但通常也适用于基于存储系统其他视图的其他类型的编辑器输入。