通常、このコードはFile
からIFile
への変換に使用されます。
IWorkspace workspace= ResourcesPlugin.getWorkspace();
IPath location= Path.fromOSString(file.getAbsolutePath());
IFile ifile= workspace.getRoot().getFileForLocation(location);
ただし、これはプロジェクト内のJavaファイルに対してのみ機能します。IFile
ファイルがワークスペースにない(プロジェクトにない)場合、どうすればFile
を取得できますか? ?
Eclipse ASTフレームワークからのバインディング解決を使用するためにこれが必要でした。しかし、明らかに、これは不可能です-それを必要とする人は、このサイトをチェックしてください:
IResource
とその子IFile
は元々、ワークスペースにあるリソースにのみ使用することを目的としていました。 Javadoc for IResource を参照してください。
ただし、Eclipse 3.3以降、外部ファイルもサポートされています。 このEclipse Wikiページ を参照してください。