简体   繁体   English

想要在代码中打开一个 eclipse xml 文件并参考它的 IFile 导航到特定的行号

[英]Want to open a eclipse xml file in code and navigate to a specific line number with reference to its IFile

I have a reference to an xml file in eclipse IDE through its IFile instance.我通过它的 IFile 实例引用了 Eclipse IDE 中的一个 xml 文件。 I know want to add an action on my view that opens the file in the xml editor and navigate to a specific line number.我知道想在我的视图上添加一个操作,在 xml 编辑器中打开文件并导航到特定的行号。 Anyone have any ideas on how to go about this?任何人都对如何解决这个问题有任何想法?

Assuming you know the file's URL:假设您知道文件的 URL:

IWorkbenchPage page = activeWorkbenchPage();
if (page == null) {
    throw new RuntimeException();
}

IFile file;
IFile[] files = ResourcesPlugin.getWorkspace().getRoot()
            .findFilesForLocationURI(url.toURI());
file = files[0];

IMarker marker;
marker = file.createMarker(IMarker.TEXT);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put(IMarker.LINE_NUMBER, lineNumber);
marker.setAttributes(map);
IDE.openEditor(page, marker);
marker.delete();

Of course you will need to catch/throw a couple of Exceptions as well, but I omitted this here for simplicity.当然,您还需要捕获/抛出几个异常,但为了简单起见,我在这里省略了这一点。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM