jxl generate excel

jar: jxl.jar

 public void generateExcel() throws Exception {
  List<ListOrderedMap> result = new ArrayList<ListOrderedMap>();
  ListOrderedMap head = new ListOrderedMap();
  head.put(0, "Country", "国家");
  head.put(1, "Postal", "邮编");
  result.add(head);
  ListOrderedMap rd = new ListOrderedMap();
  rd.put(0, "Country", "中国");
  rd.put(1, "Postal", "123456");
  result.add(rd);
  rd = new ListOrderedMap();
  rd.put(0, "Country", "美国");
  rd.put(1, "Postal", "213213");
  result.add(rd);
  System.out.println(result.get(0));
  System.out.println(result.get(1));
  System.out.println(result.get(2));
  //新建Excel文件
  WritableWorkbook book = Workbook.createWorkbook(new File("d:/test.xls"));
  //新建Excel的sheet
  WritableSheet sheet = book.createSheet("第一页", 0);
  //设置A\B列的列宽
  sheet.setColumnView(0, 10);
  sheet.setColumnView(1, 20);
  //指定单元格的格式
  WritableCellFormat format1 = new WritableCellFormat();
  // 把水平对齐方式指定为居中
  format1.setAlignment(jxl.format.Alignment.CENTRE);
  // 把垂直对齐方式指定为居中
  format1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
//  format1.setWrap(false);//长度不够显示的时候 是否自动换行
//  format1.setShrinkToFit(false);//自动转换显示字体大小,使内容能够显示
//  format1.setOrientation(Orientation.PLUS_45);//内容的显示是否倾斜
  Label label;
  //往sheet里加单元格内容
  for(int i=0;i<result.size();++i){
   ListOrderedMap rd1 = result.get(i);
   for(int j=0;j<rd1.size();++j){
    String val = (String)rd1.getValue(j);
    label = new  Label( j ,  i ,val,format1 ) ;
    sheet.addCell(label);
   }
  }
  book.write();
  book.close();
  System.out.println("excel generated");
 }

ListOrderedMap:

org.apache.commons.collections.map.ListOrderedMap

jar:commons-collections.jar

后台打印结果为:

{Country=国家, Postal=邮编}
{Country=中国, Postal=123456}
{Country=美国, Postal=213213}
excel generated

生成excel文件为:

国家 邮编
中国 123456
美国 213213
原文地址:https://www.cnblogs.com/tomcatandjerry/p/2538517.html