Apache POI-如何使用选项保护工作表?
我正在使用Apache
POI生成Excel文件(2007)。我要保护的是工作表,但是启用了一些选项。选项是指您尝试保护Excel应用程序中的工作表时的复选框列表(在标签“允许此工作表的所有用户访问:”下)。具体来说,我想启用“选择锁定/未锁定的单元格”,“设置格式列”,“排序”和“允许自动过滤”。非常感谢你!:D
回答:
在Apache POI 3.9中,可以通过启用锁定功能来使用XSSF
Sheet保护。甚至您可以留下一些未锁定的excel对象,以防万一下面我遗漏了未锁定的excel对象(即文本框)而其余部分被锁定的情况。
private static void lockAll(Sheet s, XSSFWorkbook workbookx){ String password= "abcd";
byte[] pwdBytes = null;
try {
pwdBytes = Hex.decodeHex(password.toCharArray());
} catch (DecoderException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
XSSFSheet sheet = ((XSSFSheet)s);
removePivot(s,workbookx);
sheet.lockDeleteColumns();
sheet.lockDeleteRows();
sheet.lockFormatCells();
sheet.lockFormatColumns();
sheet.lockFormatRows();
sheet.lockInsertColumns();
sheet.lockInsertRows();
sheet.getCTWorksheet().getSheetProtection().setPassword(pwdBytes);
for(byte pwdChar :pwdBytes){
System.out.println(">>> Sheet protected with '" + pwdChar + "'");
}
sheet.enableLocking();
workbookx.lockStructure();
}
以上是 Apache POI-如何使用选项保护工作表? 的全部内容, 来源链接: utcz.com/qa/424140.html