我正在使用apache poi从ppt文件中删除幻灯片。
HSLFSlideShow slideShow = new HSLFSlideShow(new HSLFSlideShowImpl(dir));
for (int i = 0; i < 5; i++) {
slideShow.removeSlide(0);
}
我打印了所有幻灯片,我看到前五张幻灯片都没了。但是,当我打开我的ppt文件时,没有任何改变。前五张幻灯片仍在那里。我该怎么办?
答案 0 :(得分:1)
当您完成更改后,您需要将它们写出来以便保存!该方法通常write(OutputStream)
涵盖所有格式,HSLF write method here
所以,只需将代码改为:
HSLFSlideShow slideShow = new HSLFSlideShow(new HSLFSlideShowImpl(dir));
for (int i = 0; i < 5; i++) {
slideShow.removeSlide(0);
}
FileOutputStream out = new FileOutputStream("changed.ppt");
slideShow.write(out);
out.close();
HSLF目前没有就地保存支持,也没有志愿者添加它,因此您必须保存到与您打开的文件不同的文件