是否可以从IFile或IPath检索文档?我试过这个:
IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(hFilePath);
TextFileDocumentProvider provider = new TextFileDocumentProvider();
IDocument doc = provider.getDocument(file);
但getDocument似乎返回null。
由于
答案 0 :(得分:1)
我遇到了同样的问题,我找到了一篇有帮助的帖子here。试一试:
IDocumentProvider provider = new TextFileDocumentProvider();
provider.connect(ifile);
document = provider.getDocument(ifile);
答案 1 :(得分:0)
这不是getDocument()的正确参数,但您应该使用无头FileBuffers API,从FileBuffers本身开始,获取ITextFileBufferManager,然后使用它打开文本文件缓冲区及其IDocument:{ {3}}。
完成后不要忘记断开与文件缓冲区的连接。
答案 2 :(得分:0)
你可以这样做:
IFile file = (IFile) resource;
IPath filePath = file.getLocation();
filePath = FileBuffers.normalizeLocation(filePath);
IDocument document = FileBuffers.getTextFileBufferManager().getTextFileBuffer(filePath , LocationKind.NORMALIZE).getDocument();