eclipse 插件开发,如何在run方法中获得文件信息
最近在学习eclipse插件的开发,想实现这样一个功能,基于popmenu,对象类型为IFile,按下弹出菜单的按钮的时候,能够显示我选择的文件的路径和内容等信息...
最近在学习eclipse插件的开发,想实现这样一个功能,基于popmenu,对象类型为IFile,按下弹出菜单的按钮的时候,能够显示我选择的文件的路径和内容等信息
展开
1个回答
展开全部
首先你的action要继承的是org.eclipse.ui.IActionDelegate,
这个接口有两个方法:run(IAction action)和selectionChanged(IAction action, ISelection selection),
你需要做的是先在 selectionChanged的方法实现里面:
this.selection = (IStructuredSelection) selection;
这句代码的意思是记录你每次改变选中的对象。
然后在run里面:
File directory = null;
if (this.selected instanceof IResource) {
directory = new File(((IResource) this.selected).getLocation()
.toOSString());
} else if (this.selected instanceof File) {
directory = (File) this.selected;
}
if (this.selected instanceof IFile) {
directory = directory.getParentFile();
}
if (this.selected instanceof File) {
directory = directory.getParentFile();
}
String path = directory.toString();
这样就得到文件的路径,至于其他信息如果存在的话也是可以获取到的。
还有注意一下错误检查,就可以了。
这个接口有两个方法:run(IAction action)和selectionChanged(IAction action, ISelection selection),
你需要做的是先在 selectionChanged的方法实现里面:
this.selection = (IStructuredSelection) selection;
这句代码的意思是记录你每次改变选中的对象。
然后在run里面:
File directory = null;
if (this.selected instanceof IResource) {
directory = new File(((IResource) this.selected).getLocation()
.toOSString());
} else if (this.selected instanceof File) {
directory = (File) this.selected;
}
if (this.selected instanceof IFile) {
directory = directory.getParentFile();
}
if (this.selected instanceof File) {
directory = directory.getParentFile();
}
String path = directory.toString();
这样就得到文件的路径,至于其他信息如果存在的话也是可以获取到的。
还有注意一下错误检查,就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
微测检测5.10
2023-05-10 广告
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇...
点击进入详情页
本回答由微测检测5.10提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询