当我们在知道文件位置的时候. 没有明确Input的时候.
我们可以获取IFile对象来打开Editor. 但是想要获取的文件必须在项目里面, 这样才能获取IFile对象
//获取工作控件, 获取根, 获取项目.
IProject porject = ResourcesPlugin.getWorkspace().getRoot().getProjects()[0];
//因为我只有一个项目, 所以没有循环遍历. 直接获取的第1个对象.
//在很明确项目名字的时候. 也可以使用getProject(name), 方法来获取项目. 同样可以获取IProject对象.
//传入项目名, 获取IFile对象.
IFile ifile = porject.getFile("src/com/test/www.xml");
IDE.openEditor(page, ifile, SQLEditor.ID); //打开编辑器.
可以使用IDE.openEditor方法来打开编辑器. 此方法有很多重载方式. 甚至可以打开外部文件. 这里的外部文件是指eclipse工作空间外部的文件.
我们在明确有Input的时候, 可以使用这种方式:
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); //打开一个空白页.
TestEditorInput input = new TestEditorInput("测试编辑器");
try {
page.openEditor(input, TestEditor.ID);
} catch (PartInitException e1) {
e1.printStackTrace();
}