1

ワークスペースの外にファイルをロードする方法はありますか?これは私が見つけたものです:

IFile fileToBeOpened = ...;
IEditorInput editorInput = new FileEditorInput(fileToBeOpened);
IWorkbenchWindow window=PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IWorkbenchPage page = window.getActivePage();
page.openEditor(editorInput, "org.eclipse.ui.DefaultTextEdtior");

ここでの問題は最初の行です。編集したいファイルはjava.io.Fileタイプです。ただし、これをIFileインスタンスに変換する方法はありません。java.io.Fileをエディターの入力として渡すにはどうすればよいですか?

4

1 に答える 1

2

外部ファイルを開くには、こちらの手順に従って くださいhttp://wiki.eclipse.org/FAQ_How_do_I_open_an_editor_programmatically%3F

import java.io.File;
import org.eclipse.core.filesystem.EFS;
import org.eclipse.core.filesystem.IFileStore;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.ide.IDE;

File fileToOpen = new File("externalfile.xml");

if (fileToOpen.exists() && fileToOpen.isFile()) {
    IFileStore fileStore = EFS.getLocalFileSystem().getStore(fileToOpen.toURI());
    IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();

    try {
        IDE.openEditorOnFileStore( page, fileStore );
    } catch ( PartInitException e ) {
        //Put your exception handler here if you wish to
    }
} else {
    //Do something if the file does not exist
}
于 2012-09-27T08:42:37.557 に答える