首个个人博客,技术菜鸟,简单记录一下编程中遇到的问题,望大神们指教。
最近需要一个简单的图片导入的小工具,其中有一个功能是将Excel表中的图片旧名字更改成新名字并写入。但是在这个过程中,遇到了一点问题:
第一:写入数据失效,这个很好解决,造成这个的主要原因是缺少这个部分:
没有创建输出流输出电子表格;
第二:写入数据后文件内容清空,这个问题困扰了我很久,最后我发现这个部分出错:
应该改为:
POI虽然初始时通过加载程序将所有文件内容加载到内存,但是还是与Excel文件保持着联系,POI会尝试从源文件中拷贝到新文件,但是这部分已经被擦除了。通过FileInputStream方式打开文件,文件内容会存在缓存中,POI的workbook与缓存中的文件内容建立联系,所以此时操作文件系统中的原始文件不会导致问题。