2009-06-03 6 views
4

Quelqu'un peut-il me dire comment obtenir le nom de fichier de l'éditeur?Eclipse 3.5: Comment obtenir le nom de fichier de l'éditeur?

Je viens de créer mon propre éditeur pour ouvrir le fichier XML et créer quelques sections pour afficher les données. Maintenant, je veux lire le fichier XML et placez-le dans la section.

Je pense que je maintenant comment lire les données XML, mais je ne sais pas comment accéder au nom du fichier afin qu'il puisse être ouvert.

Merci

Répondre

7

Peut être this approach pourrait être utile pour vous casre

jeté l'entrée de l'éditeur pour IFileEditorInput et utiliser le IFile pour appeler getLocation() ou getLocationURI().

Comme dit here, essentiellement

((IFileEditorInput)editorInput).getFile().getLocation() est suffisant.

Voir aussi this code:

public static String getCurrentFileRealPath(){ 
     IWorkbenchWindow win = PlatformUI.getWorkbench 
().getActiveWorkbenchWindow(); 

     IWorkbenchPage page = win.getActivePage(); 
     if (page != null) { 
      IEditorPart editor = page.getActiveEditor(); 
      if (editor != null) { 
       IEditorInput input = editor.getEditorInput(); 
       if (input instanceof IFileEditorInput) { 
        return ((IFileEditorInput)input).getFile 
().getLocation().toOSString(); 
       } 
      } 
     } 
     return null; 
} 
+0

merci pour le code mais j'ai eu une erreur sur IFileEditorInput. il est dit IFileEditorInput ne peut pas être résolu en un type. Il existe une solution appropriée pour les réparations rapides. – Iso

7

Je sais que c'est vieux, mais depuis que je suis tombé sur elle lors de la recherche d'une solution au même problème, je veux ajouter une note à la réponse par VonC:

IFileEditorInput 

est caché dans le org.eclipse.ui.ide plug-in, donc pour que la solution pour travailler votre plug-in a besoin d'affirmer que comme une dépendance.

+0

merci matthias: D – Iso

+0

Merci, m'a sauvé beaucoup d'ennuis. –

Questions connexes