该方法里面的参数说明如下:
1)is:即Template文件的一个输入流
2)newSheetNames:即形成Excel文件的时候Sheet的Name
3)objects:即我们传入的对应每个Sheet的一个Java对象,这里传入的List的元素为一个Map对象
4)beanName:这个参数在jxls对我们传入的List进行解析的时候使用,而且,该参数还对应Template文件中的Tag,例 如,beanName为map,那么在Template文件中取值的公式应该定义成${map.get("property1")};如果 beanName为payslip,公式应该定义成${payslip.get("property1")}
5)beanParams:这个参数在使用的时候我的代码没有使用到,这个参数是在如果传入的objects还与其他的对象关联的时候使用的,该参数是一个HashMap类型的参数,如果不使用的话,直接传入new HashMap()即可
6)startSheetNo:传入0即可,即SheetNo从0开始
(http://lijiye.javaeye.com/blog/109165)
public byte[] export() {
Pair p1=new Pair(); p1.setTime("aa"); p1.setValue(1d);
Report r1=new Report();
r1.addPair(p1);
r1.setTitle("title 1");
InputStream is = new FileInputStream("tmplate");
List<Report> sheets=new ArrayList<Report>();
List<String> sheetName=new ArrayList<String>();
sheets.add(r1);
sheetName.add("pressure");
HSSFWorkbook wb=(new XLSTransformer()).transformMultipleSheetsList(is, sheets,sheetName,"report",new HashMap<Object,Object>(),0);
FileOutputStream fileOut = new FileOutputStream("c:/test.xls");
wb.write(fileOut);
fileOut.close();
return null;
// return wb.getBytes();
}