泛微OA ecology9 e9 二次开发下载流程及建模表单中的附件

泛微E9 OA 二次开发下载流程及建模表单中的附件可以通过以下方式进行实现。

private InputStream getFileByDocId(String offerFileId) throws Exception {
		InputStream inputStream = null;
		BufferedInputStream bufferedInputStream = null;
		ByteArrayOutputStream byteArrayOutputStream = null;
		String filepath = null;
		String iszip = null;
		String isencrypt = null;
		String aescode = null;
		RecordSet rs = new RecordSet();
		rs.executeQuery("SELECT a.imagefilename,a.filerealpath,a.iszip,a.imagefiletype,a.isaesencrypt,a.aescode FROM ImageFile a WHERE (imagefileid in(SELECT imagefileid FROM DocImageFile WHERE (docid = '" + offerFileId + "')))");
		if (rs.next()) {
			filepath = rs.getString("filerealpath");
			iszip = rs.getString("iszip");
			isencrypt = rs.getString("isaesencrypt");
			aescode = rs.getString("aescode");
		}
		File file = new File(filepath);
		if ("1".equals(iszip)) {
			ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(file));
			if (zipInputStream.getNextEntry() != null) {
				bufferedInputStream = new BufferedInputStream(zipInputStream);
			}
		} else {
			bufferedInputStream = new BufferedInputStream(new FileInputStream(file));
		}
		byte[] arrayOfByte = new byte[1024];
		byteArrayOutputStream = new ByteArrayOutputStream();
		int n;
		while ((n = bufferedInputStream.read(arrayOfByte)) != -1) {
			byteArrayOutputStream.write(arrayOfByte, 0, n);
			byteArrayOutputStream.flush();
		}
		byte[] arrayOfByte1 = byteArrayOutputStream.toByteArray();
		inputStream = new ByteArrayInputStream(arrayOfByte1);
		if (isencrypt.equals("1")) {
			inputStream = AESCoder.decrypt(inputStream, aescode);
		}
		return inputStream;
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值