java 手动创建表格

在项目中导入相应的jar包

poi-3.7.jar

代码示例:

import java.io.File;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;


import javax.servlet.ServletContext;


import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.struts2.ServletActionContext;


import com.opensymphony.xwork2.ActionSupport;
import com.sun.org.apache.bcel.internal.generic.RETURN;


    public class CreateSimpleExcelToDisk extends ActionSupport{
        
        /**
         * @功能:手工构建一个简单格式的Excel
         */
    
        public String exportReport() {
            //第一步,创建一个webbook,对应一个Excel文件
            HSSFWorkbook wb = new HSSFWorkbook();
            //第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
            HSSFSheet sheet = wb.createSheet("图书表一");
            //第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
            HSSFRow row = sheet.createRow((int)0);
            //第四步,创建单元格,并设置值表头  设置表头居中
            HSSFCellStyle style = wb.createCellStyle();
            style.setAlignment(HSSFCellStyle.ALIGN_CENTER); //创建一个居中格式
             
            HSSFCell cell = row.createCell((short)0);
            cell.setCellValue("书名"); cell.setCellStyle(style);
            cell = row.createCell((short)1);
            cell.setCellValue("出版社"); cell.setCellStyle(style);
            cell = row.createCell((short)2);
            cell.setCellValue("价格"); cell.setCellStyle(style);
            cell = row.createCell((short)3);
            cell.setCellValue("日期"); cell.setCellStyle(style);
            
            List<Book> bookList = new ArrayList<Book>();
            Book book  = new Book();
            book.setId(1);
            book.setAuthor("张三");
            book.setPublish("南京");
            book.setPrice("10.00");
            book.setTime("2014-03-03");
            bookList.add(book);
            
            Book book1  = new Book();
            book1.setId(2);
            book1.setAuthor("张三1");
            book1.setPublish("南京1");
            book1.setPrice("11.00");
            book1.setTime("2014-03-03");
            bookList.add(book1);
         
            //第五步,写入实体数据 实际应用中这些数据从数据库得到,
       //     List list = CreateSimpleExcelToDisk.getStudent();
     
            for(int i=0;i<bookList.size();i++)
            {
                row = sheet.createRow((int)i+1);
                Book stu = (Book) bookList.get(i);
                //第四步,创建单元格,并设置值
                row.createCell((short)0).setCellValue((double)stu.getId());
                row.createCell((short)1).setCellValue(stu.getAuthor());
                row.createCell((short)2).setCellValue(stu.getPublish());
                cell = row.createCell((short)3);
                cell.setCellValue(stu.getTime());
            }
            //第六步,将文件存到指定位置
            try 
            {
                FileOutputStream fout = new FileOutputStream("E:/report.xls");
                wb.write(fout);
                fout.close();
            } catch (Exception e) 
            {
                e.printStackTrace();
            }
            return "success";
        }
       
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值