基本上,我想知道如何在 IntelliJ中执行此操作( Eclipse Plugin Get Code from Current Open File )。
问问题
3541 次
2 回答
15
万一有人正在寻找这个 - 如果你想要当前打开文件的文件名,你必须跳过一些额外的箍:
Document currentDoc = FileEditorManager.getInstance(project).getSelectedTextEditor().getDocument();
VirtualFile currentFile = FileDocumentManager.getInstance().getFile(currentDoc);
String fileName = currentFile.getPath()
(通过在 Github 搜索中输入“getSelectedTextEditor 文件名”找到这个 - 有时你只需要一个指向正确方向的指针......)
于 2013-11-05T22:24:19.733 回答
11
在什么情况下?如果您在一个动作中,您可以简单地从 ActionEvent 中获取所有内容,例如:
e.getData(LangDataKeys.EDITOR).getDocument().getText();
(当 e 是 AnActionEvent 时)。
否则,您可以从项目中获取它:
FileEditorManager.getInstance(project).getSelectedTextEditor().getDocument().getText();
于 2013-07-29T17:49:15.203 回答