在我的eclipse插件中,我有一个CompilationUnitEditor的EditorReference对象,其中显示了我的源文件。现在,我如何从CompilationUnitEditor获取此源文件?
答案 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
,但通常也适用于基于存储系统其他视图的其他类型的编辑器输入。