lxk1314 发表于 2013-1-28 18:11:59

导出多个文件,纳入zip流

int page = size % ConfigUtil.configFileSize() == 0 ?
                size / ConfigUtil.configFileSize() : size / ConfigUtil.configFileSize() + 1;
      
      ZipOutputStream zos = new ZipOutputStream(os);
      ServletActionContext.getResponse().addHeader("Content-Disposition",
                "attachment; filename=\"" + (StringUtil.iso88591String(namedSql.getKeyword()) +
                        namedSql.getId() + DynamicConst.DYNAMIC_DOWNLOAD_ZIP_FILE_SUFFIX) + "\"");
      
      try {
            zos.flush();
            for (int i=0; i<page; i++)
            {
                CommResult ret = sqlExecuteDao.executeQuery(
                DynamicSqlUtil.generatePageSql(namedSql.getSql(), i * ConfigUtil.configFileSize() + 1, ConfigUtil.configFileSize()),
                RequestUtil.parseRequest(namedSql.getParams()));
               
                FileUtil.putZipEntryToFile(zos, ret, i + DynamicConst.DYNAMIC_DOWNLOAD_FILE_SUFFIX);
//

zos.putNextEntry( new ZipEntry(entryName));
            
            FileUtil.writeHeader(zos, result.getColumns());
            
            FileUtil.write(zos, result.getRowDatas());
os.write(FileUtil.listToString(data).getBytes());
页: [1]
查看完整版本: 导出多个文件,纳入zip流