0
我正在嘗試編輯現有工作表,爲其添加新值並保護新創建的工作簿。 從網上搜索我來了解sheet.protectSheet(「some_password」)是有幫助的。 但在我的情況下,編譯器給出錯誤,說明protectSheet方法不存在。 然後我試圖使用sheet.setProtect(真),但在執行它提供了以下錯誤:POI保護表
java.lang.NullPointerException
at org.apache.poi.hssf.usermodel.HSSFSheet.setProtect(HSSFSheet.java:890)
這裏是我的代碼:
FileInputStream fsIP= new FileInputStream(new File(request.getSession().getServletContext().getRealPath(".")+ "/Cheque Printing.xls"));
HSSFWorkbook wb = new HSSFWorkbook(fsIP);
HSSFSheet worksheet = wb.getSheetAt(0);
的是,我通過getSheetAt和訪問表的問題不是通過createSheet?
請看看另一個關於SO的答案http://stackoverflow.com/questions/14701322/apache-poi-how-to-protect-sheet-with-options – hanumant 2015-02-23 06:38:41
我想使用hssf而不是xssf它可以幫助我這條路? – JG1991 2015-02-23 08:37:01
我不確定您使用的是哪個版本的Apache POI。但最新版本有一個簡單而直接的方法。 https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFSheet.html#protectSheet(java.lang.String) – hanumant 2015-02-23 08:43:57