HSSFWorkbook fileName = infoQueryService.exportMyInfoToExcel(infoHeaderBO);
response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition", "attachment; filename=/"Info.xls/"");
//把数据放到流中
OutputStream os = response.getOutputStream();
fileName.write(os);
response.flushBuffer();
private HSSFWorkbook exportResultApprove(List dataList) throws EccInfoException
{
//初始化HSSFWorkbook对象
HSSFWorkbook wb = null;
//初始化信息列表
List infoList = new ArrayList();
//初始化详细信息列表
List detailsList = new ArrayList();
//构造标题信息
String[] headInfo =
{
"序号",
"最后修改人" };
//将列头数组转换为List
detailsList = Arrays.asList(headInfo);
//将列头添加到信息列表中
infoList.add(detailsList);
// 事业部/中心
String deptCenter = "";
String deptCenter1 = "";
String deptDname = "";
//判断数据列表是否存在
if (dataList != null && dataList.size() > 0)
{
//循环数据列表
for (int i = 0; i < dataList.size(); i++)
{
//获得数据列表单元对象
Object listObject = dataList.get(i);
//判断数据列表单元对象是否为InfoHeaderBO类型
if (listObject instanceof InfoHeaderBO)
{
//初始化项目业务对象
InfoHeaderBO infoHeaderBO = (InfoHeaderBO)listObject;
//初始化详细信息列表
detailsList = new ArrayList();
detailsList.add(String.valueOf(i + 1));
try
{
deptName = infoHeaderBO.getProvideByName();
detailsList.add(fullId);
detailsList.add(infoHeaderBO.getInfoHeaderVO().getInfoTitle());
detailsList.add(infoHeaderBO.getInfoHeaderVO().getLastUpdatedBy());
//将详细信息列表添加到信息列表中
infoList.add(detailsList);
}
}
}
IpmExportService ipmExportService = new IpmExportService();
//建立新HSSFWorkbook对象
wb = ipmExportService.writeToExport(infoList);
return wb;
}
* 方法名称:writeToExport
* 内容摘要:从传入的列表dataList中按顺序取出里面的列表arryList,
* 然后从arrayList得到所有的String写到一行中;
*
* @param dataList
* @return HSSFWorkbook
* @roseuid 4313ABB00399
*/
public HSSFWorkbook writeToExport(List dataList) throws EccInfoException
{
//初始化HSSFWorkbook对象
HSSFWorkbook wb = null;
try
{
//判断列表是否存在
if (dataList == null || dataList.size() < 1)
{
return null;
}
//建立新HSSFWorkbook对象
wb = new HSSFWorkbook();
//建立新的sheet对象
HSSFSheet sheet = wb.createSheet("new sheet");
int sheetRow = 0;
//循环取列表中的值
for (int i = 0; i < dataList.size(); i++)
{
//定义子列表
List subDataList = null;
//获得列表中的对象
Object listObject = dataList.get(i);
//判断列表中的对象是否属于List类型
if (listObject instanceof List)
{
//将列表中的对象赋值给子列表
subDataList = (List)listObject;
if (subDataList != null && subDataList.size() > 0)
{
//建立新行
HSSFRow rowId = sheet.createRow((short)sheetRow);
//循环取子列表中的值
for (int j = 0; j < subDataList.size(); j++)
{
//建立新行
HSSFCell csCell = rowId.createCell((short)j);
//设置cell编码解决中文高位字节截断
csCell.setEncoding(HSSFCell.ENCODING_UTF_16);
//设置中西文结合字符串
if (subDataList.get(j) instanceof Integer)
{
csCell.setCellValue(Double.parseDouble(subDataList.get(j).toString()));
}
else
{
csCell.setCellValue((String)subDataList.get(j));
}
}
//行号递增
sheetRow++;
}
}
}
}
catch (Exception ex)
{
}
return wb;
}