我有一个 EObject 的 URI,如下所示:
file:/C:/runtime-run123.product/Project1/examples/Apple.ecore#/
我通过调用 EcoreUtil.getURI(ePackage)
获取 URI,其中 ePackage 是 EPackage
类的实例。
如何从该 URI 获取相对路径?结果应该是:/Project1/examples/Apple.ecore
最佳答案
您可以使用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
关于eclipse - 从 EObject 的绝对 URI 获取相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22056361/