利用poi生成excel表格

import java.io.FileOutputStream;
import java.util.List;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.Region;

public class ExportToExcel {

 /**
  * @description
  *
  * @param args
  */
 public static void main(String[] args)
 {
  List listRow = null;
  List listCell = null;
  // TODO Auto-generated method stub
  ExportToExcel(listRow,listCell);
 }
 public static void ExportToExcel(List listRow,List listCell)
 {
    try
    {
       HSSFWorkbook wb = new HSSFWorkbook();
       HSSFSheet sheet = wb.createSheet("sheet1");
       HSSFRow row = null;
       HSSFCell cell = null;
      
       //width size
//        sheet.setDefaultColumnWidth((short)500);
      
       //style
       HSSFCellStyle cs = wb.createCellStyle();//create astyle
       HSSFFont littleFont = wb.createFont();//create a Font
       littleFont.setFontName("SimSun");
       littleFont.setFontHeightInPoints((short)7);
       cs.setFont(littleFont);//set font
       cs.setAlignment(HSSFCellStyle.ALIGN_CENTER);//align center
       cs.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//valign middle
       cs.setBorderBottom(HSSFCellStyle.BORDER_THIN);//bottom border
       cs.setBorderLeft(HSSFCellStyle.BORDER_THIN);//left border
       cs.setBorderRight(HSSFCellStyle.BORDER_THIN);//right border
       cs.setBorderTop(HSSFCellStyle.BORDER_THIN);//top border
            
       //file name
       /*
       row = sheet.createRow((short)0);
       row.setHeight((short)300);
       cell = row.createCell((short)0);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("This is a test out print");
       sheet.addMergedRegion(new Region(0,(short)0,0,(short)7));//merged region
      
      
       row = sheet.createRow((short)1);
       row.setHeight((short)300);
       cell = row.createCell((short)0);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("name");
       sheet.addMergedRegion(new Region(1,(short)0,1,(short)1));
      
       cell = row.createCell((short)2);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("sex");
       sheet.addMergedRegion(new Region(1,(short)2,1,(short)3));
      
       cell = row.createCell((short)4);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("nation");
       sheet.addMergedRegion(new Region(1,(short)4,1,(short)5));
      
       cell = row.createCell((short)6);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("native place");
       sheet.addMergedRegion(new Region(1,(short)6,1,(short)7));
      
      
       row = sheet.createRow((short)2);
       row.setHeight((short)300);
       cell = row.createCell((short)0);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("aaa");
       sheet.addMergedRegion(new Region(2,(short)0,2,(short)1));
      
      
       cell = row.createCell((short)2);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("male");
       sheet.addMergedRegion(new Region(2,(short)2,2,(short)3));
      
       cell = row.createCell((short)4);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("han");
       sheet.addMergedRegion(new Region(2,(short)4,2,(short)5));
      
       cell = row.createCell((short)6);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("chengduaa");
       sheet.addMergedRegion(new Region(2,(short)6,2,(short)7));
      
       row = sheet.createRow((short)3);
       row.setHeight((short)300);
       cell = row.createCell((short)0);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("bbb");
       sheet.addMergedRegion(new Region(3,(short)0,3,(short)1));
      
       cell = row.createCell((short)2);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("man");
       sheet.addMergedRegion(new Region(3,(short)2,3,(short)3));
      
       cell = row.createCell((short)4);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("han");
       sheet.addMergedRegion(new Region(3,(short)4,3,(short)5));
      
       cell = row.createCell((short)6);
       cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       cell.setCellValue("chengduaa");
       sheet.addMergedRegion(new Region(3,(short)6,3,(short)7));
       */
      
       for(short i=0; i <listRow.size()+1;i++)

 {
    row = sheet.createRow(i);
    row.setHeight((short)300);
       for(short j=0; j<listCell.size();j++)        

      {

      cell = row.createCell(j);
        if(i==0)
        {
         cell.setCellValue(listCell.get(j).toString());
        }
        else if(i<=listRow.size())
        { 
         cell.setCellValue(((List)listRow.get(i-1)).get(j).toString());
        }
        cell.setEncoding(HSSFCell.ENCODING_UTF_16);
       }
     }
      
       //println
       FileOutputStream fileOut = new FileOutputStream("C:\\Documents and Settings\\wei\\Desktop\\ReprotByArtist20070226.xls");
       wb.write(fileOut);
       fileOut.close();
       System.out.println("Export successfully...");
   }
    catch (Exception e)
    {
       e.printStackTrace();
    }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子图书资源服务系统是一款基于 Java Swing 的 C-S 应用,旨在提供电子图书资源一站式服务,可从系统提供的图书资源中直接检索资源并进行下载。.zip优质项目,资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目。 本人系统开发经验充足,有任何使用问题欢迎随时与我联系,我会及时为你解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(若有),项目具体内容可查看下方的资源详情。 【附带帮助】: 若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步。 【本人专注计算机领域】: 有任何使用问题欢迎随时与我联系,我会及时解答,第一时间为你提供帮助,CSDN博客端可私信,为你解惑,欢迎交流。 【适合场景】: 相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可以基于此项目进行扩展来开发出更多功能 【无积分此资源可联系获取】 # 注意 1. 本资源仅用于开源学习和技术交流。不可商用等,一切后果由使用者承担。 2. 部分字体以及插图等来自网络,若是侵权请联系删除。积分/付费仅作为资源整理辛苦费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值