2011-05-04 85 views

回答

5
org.eclipse.ui.PlatformUI.getWorkbench().saveAll(..) 

應該這樣做。

如果要保存活動的編輯器,請嘗試

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 
IEditorPart editor = page.getActiveEditor(); 
page.saveEditor(editor, true /* confirm */); 

注意,在導航路徑中的元素可以爲null。

+0

謝謝塞巴斯蒂安,但其保存所有打開editor.I要保存目前唯一的(活動)Editor.Can請你告訴我怎麼能實現它? – 2011-05-04 11:55:42

+0

查看最新的答案。 – 2011-05-04 13:52:03

+0

你知道如何保存特定的當前打開的編輯器嗎? – user847988 2012-11-23 12:35:49

0

我用它來保存髒編輯爲一個或多個項目:

//Save all changes 
    Display.getDefault().syncExec(new Runnable() { // save all editors needs to be called by the ui thread! 
     @Override 
     public void run() { 
      IDE.saveAllEditors(new IResource[]{prj}, true); 
     } 
    }); 

其中prj是爲IProject對象。

希望這有助於

再見

0

我用 -

IDEWorkbenchPlugin.getDefault().getWorkbench().saveAllEditors(true);  
+0

注意:'IDEWorkbenchPlugin'是內部的,不應該使用。如果你沒有訪問你的窗口或頁面,你可以回頭看看API的PlatformUI.getWorkbench()。 – 2011-05-04 18:13:10

相關問題