我有一个EObject的URI,如下所示:
file:/C:/runtime-run123.product/Project1/examples/Apple.ecore#/
我通过调用EcoreUtil.getURI(ePackage)
获取URI,其中ePackage是类EPackage
的实例。
如何从该URI获取相对路径?结果应为:/Project1/examples/Apple.ecore
答案 0 :(得分:1)
您可以使用IFile#getFullPath
获取相对路径。您需要先从EObject
转换为IFile
。
URI uri = EcoreUtil.getURI(eObject);
IPath path = new Path(uri.toFileString());
IFile file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(path);
System.out.println(file.getFullPath()); // Relative path