JAVA实现EXCEL加密

JAVA如何实现EXCEL加密(即在打开EXCEL文件的时候提示输入密码)。

需要用到poi。
其最新lib下载地址如下:
http://www.apache.org/dyn/closer.cgi/poi/release/bin/poi-bin-3.6-20091214.zip
把其中的poi-3.6-20091214.jar加入classpath中。

加密用到
HSSFWorkbook的writeProtectWorkbook方法。
具体实现如下:

package excel;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class Writer {
public static final String FILE = "./workbook.xls";

public static void main(String[] args) {
FileOutputStream fileOut = null;
try {
// 创 建一个工作薄
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(FILE));
// 设置密 码 保 护 ·
wb.writeProtectWorkbook("password", "owner");
// 写入excel文件
fileOut = new FileOutputStream(FILE);
wb.write(fileOut);
fileOut.close();
} catch (IOException io) {
io.printStackTrace();
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

}

}

注:先创建一个workbook.xls把不然会报错。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-01

添加spire.xls.jar依赖,使用代码

    //Load a sample Word document

    Workbook workbook = new Workbook();

    workbook.loadFromFile("C:\\test.xlsx");

    //Protect workbook with password

    workbook.protect("abcd-1234");

    //Save the doucment

    workbook.saveToFile("EncryptedWorkbook.xlsx", ExcelVersion.Version2016);

相似回答