我正在开发一个 Eclipse 插件,创建一个新的项目向导。在工作区中创建此类新项目时,我需要它将文件夹及其后代从插件复制到工作区中刚刚创建的项目。问题是,虽然该项目是IResource
插件文件夹位于文件系统中。
我成功获取了需要复制的源插件文件夹的 URL,并且拥有 IProject 参考。
我需要知道的是:如何将前者复制到后者中?
查看这个答案了解如何从插件中获取文件/文件夹。
然后在项目中创建新文件/文件夹并使用设置文件内容InputStream
:
void copyFiles (File srcFolder, IContainer destFolder) {
for (File f: srcFolder.listFiles()) {
if (f.isDirectory()) {
IFolder newFolder = destFolder.getFolder(new Path(f.getName()));
newFolder.create(true, true, null);
copyFiles(f, newFolder);
} else {
IFile newFile = destFolder.getFile(new Path(f.getName()));
newFile.create(new FileInputStream(f), true, null);
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)