使用HSSF对excel操作中注意事项

最近使用HSSF制作了一个导出数据到excel表中的需求,创建表和向表中插入数据这个就不必多说了,网上可以搜索到很多教程,这次遇到的问题就是在导出数据到excel表中之后想要将文件删除,却提示该文件在java(TM)中打开,无法删除。

解决方法:经过查看源代码之后发现工程中对于操作表文件的代码使用的是在创建excel表的时候直接使用write(new FileOutputStream(""))在生成一个新的Excel文件,在后续的过程中代码没有对这个输出流进行关闭操作,从而导致该文件一直被输出流所占用,所以无法删除,打开的时候也提示该文件正在被其他程序造作。

只要在创建Excel表文件的时候实例化一个输出流对象,并在完成对Excel表的操作之后对其进行关闭处理(outputstream.close())这样就可以对输出的文件进行删除操作了

PS:不光是创建Excel表,在读,写的时候同样需要对输入输出流进行关闭操作~

你可能感兴趣的:(java)