如何在eclipse中写入文件?

时间:2010-04-15 03:13:51

标签: java eclipse

如果我有文件处理文件如何创建文档并写入文件?现在,我必须完全删除文件并使用新内容重新创建,如下所示:

IFile file = getFile(); 
file.delete();
file.create(input, false, null);

编辑:这是一个eclipse插件,而不是普通的java程序。

3 个答案:

答案 0 :(得分:1)

这是因为您正在尝试读取不存在的文件。因此,通过获取文件并关闭它,您实际上创建了文件。

答案 1 :(得分:1)

IFile接口似乎有一些方法可以让你写一些内容:

/**
 * Appends the entire contents of the given stream to this file.
 * ...
 */
public void appendContents(InputStream source, boolean force, boolean keepHistory, IProgressMonitor monitor) throws CoreException;

答案 2 :(得分:0)

在这里找到答案:http://old.nabble.com/how-to-get-the-IDocument-of-an-ITextFileBuffer-created-from-an-IFile--td19222160.html

不得不修改一点以满足我的需要:

FileEditorInput editorInput = new FileEditorInput(file);
IWorkbench wb = PlatformUI.getWorkbench();
IWorkbenchPage page = wb.getActiveWorkbenchWindow().getActivePage();
IEditorDescriptor desc = wb.getEditorRegistry().getDefaultEditor(file.getName());
IEditorPart editor = (IEditorPart)page.openEditor(editorInput, desc.getId());
ITextEditor textEditor = (ITextEditor) editor.getAdapter(ITextEditor.class);
IDocumentProvider documentProvider = textEditor.getDocumentProvider(); 
IDocument document = documentProvider.getDocument(editorInput);
document.replace(position, 0, content);