@SuppressWarnings("deprecation") @Override public InputStream exportItemProjectExcel(ListITEM_PROJECT_ID_LIST) throws Exception { FileInputStream inputStream = new FileInputStream(new File(this.getClass().getResource("/../../resource/分项工程.xlsx").getFile())); Workbook workbook = WorkbookFactory.create(inputStream); Sheet sheet = workbook.getSheetAt(0);// 读取第-页 Row row; for (int i = 0; i < ITEM_PROJECT_ID_LIST.size(); i++) { row = sheet.createRow(i); row.createCell(0).setCellValue((String) ITEM_PROJECT_ID_LIST.get(i)); } ByteArrayOutputStream baos = new ByteArrayOutputStream(); workbook.write(baos);// 临时存储流到内存 baos.flush(); ByteArrayInputStream workbookInput = new ByteArrayInputStream(baos.toByteArray()); // 创建POIFS文件系统 加密文件 POIFSFileSystem fs = new POIFSFileSystem(); EncryptionInfo info = new EncryptionInfo(fs, EncryptionMode.agile); Encryptor enc = info.getEncryptor(); enc.confirmPassword("itemProject"); // 然后把字节输入到输入流,然后输入到OPC包里面 OPCPackage opc = OPCPackage.open(workbookInput); OutputStream os = enc.getDataStream(fs); opc.save(os); opc.close(); baos = new ByteArrayOutputStream(); fs.writeFilesystem(baos); baos.flush(); inputStream.close(); workbook.close(); baos.close(); return new ByteArrayInputStream(baos.toByteArray()); }