清除资源文件(IFile)的内容

时间:2016-07-04 09:16:48

标签: eclipse eclipse-plugin

在工作区中,我们有一组资源文件,其中包含内容。

问题:当我选择项目时,我们可以获取资源文件,现在我们要清除文件的内容。因此,我们尝试将资源文件设置为IFile,如果我们尝试使用IFile::delete()方法,则会从工作区中删除资源文件,而不是清除内容。

如何在不删除工作空间的IFile的情况下清除工作区中存在的IFile的内容?

1 个答案:

答案 0 :(得分:1)

使用IFile::setContents()更改文件内容。

要清除文件内容,请使用空输入流:

InputStream newContents = new ByteArrayInputStream( new byte[ 0 ] );
IProgressmonitor monitor = ...
file.setContents( newContents, IResource.KEEP_HISTORY, monitor );

KEEP_HISTORY标记将以前的内容保留在历史记录中,以便用户可以使用替换为>返回到早期版本。本地历史。如果不需要,请使用IResource.NONE