1. 程式人生 > >NPOI讀取excel文件導出數據, 而此時文件正在打開中拋異常怎麽辦

NPOI讀取excel文件導出數據, 而此時文件正在打開中拋異常怎麽辦

post style xssf 使用 color 正在 tool blog xss

項目中需要用到一些數值表格, 方便起見都是用excel來的.

而如果excel正打開中, 直接使用npoi制作的工具來導出數據的話, 在這一行將會異常:

workbook = new XSSFWorkbook(filepath);

其實只是讀取的話, 並不需要獲得它完整的使用權限, 那麽用file.open然後再new workbook行不行? 也不行.

其實看那些excel其他軟件的做法就很簡單了, 首先執行一次copy

string tmpFile = "~tooltmp.xlsx";
File.Copy(excelFileName, tmpFile, true);

然後打開這個copy的臨時文件就可以了, 因為是自己創建的文件, 有完全的使用權也不會有別人來用吧~

NPOI讀取excel文件導出數據, 而此時文件正在打開中拋異常怎麽辦