如何获得IFile的完全限定名称?

时间:2015-03-14 23:51:33

标签: java

我使用以下代码尝试获取IFile对象的完全限定名称。

private String getFullName(IFile file) {
   IJavaElement element = JavaCore.create(file);
      if (element instanceof IType) {
         return ((IType) element).getFullyQualifiedName().toString();
      } else {
         return new String(((CompilationUnit) element).getFileName());
      }
}

如果IFile对象是一个类,该方法返回例如以下字符串:

/TestProject/src/testPackage.TestClass.java

我想要的是没有Project Name和src文件夹的完全限定名称。但是我怎么能实现呢?

我正在寻找的路径看起来像这样(包声明+类名):

testPackage.TestClass.java

1 个答案:

答案 0 :(得分:2)

您可以使用Java File将完整路径解压缩到文件名中并删除目录

// assuming the above routine - getFullName
File fullNameAsFile = new File(getFullName(iFile));

String namePart = fullNameAsFile.getName();