2015-05-18 39 views
0

我正在開發一個TableViewer,它填充了基於所選資源的數據。對於文件我檢查接收的物品是這樣的:如何驗證資源在Eclipse中是否爲.c,.h,.s類型?

if(item instanceof IFile) { 
    something; 
} 

我看到.C,.H,.S文件是不是IFile類型,但ICElement類型。當我檢查這個時,我看到這些文件夾也屬於這種類型。

因爲我只需要在以下問題來選定的文件信息:

從所有的資源都派生的主類是什麼?我想確保如果選擇任何類型的文件,我的查看器將被填充。

回答

2

從當前選擇中獲得的對象通常不是基礎資源的實例,但可以使用以下「適應」資源:

IAdapterManager adapter = Platform.getAdapterManager(); 

IResource resource = (IResource)adapter.getAdapter(selectedObject, IResource.class); 

if (resource instanceof IFile) 
{ 
    .... 
} 
2

什麼是所有資源派生的主要類?

我要說IResource(的IFile,和的iFolder是的IProject子接口)

如果你想相應地處理文件,它們的擴展名,只解析擴展:)

IResource doc

+0

您應該始終使用內容類型管理器來獲取文件的類型。 –

+0

感謝您的提示:) – flafoux

相關問題