有没有人知道java导入excel时,如何验证工作簿的保护密码是否正确?正确密码已知,密码在我导出的时候已经设置好了,如: sheet.protectSheet(new String("123456"));//123456是密码,但我如何再导入的时候来验证这个密码的正确性。如下图:

解决方案 »

  1.   

    首先在导入的时候校验正确性 是指读取工作簿的时候输入密码吗?Decryptor.getInstance(new EncryptionInfo(new NPOIFSFileSystem(File file, boolean readOnly))).verifyPassword(password);
       还是校验工作簿的密码有没有被篡改?在导出的时候将对应密码存储起来,然后在导入的时候校验
      

  2.   

    对的, 是指读取工作簿里面数据的时候的时验证工作簿的保护密码是否正确,正确密码已知,需要在导入的时候根据已知的正确密码验证导入文件的工作簿密码是否正确。目的:规定用户操作时只能用由系统导出的excel模板,来导入数据更新,如图一和图二,图一,图二
      

  3.   

    这个方法是不能用吗?
     boolean checkResult = Decryptor.getInstance(new EncryptionInfo(new NPOIFSFileSystem(new File(""), true))).verifyPassword("123456");
            if (checkResult){
                //检测正确
            }