利用poi把数据保存excel,并格式化日期实例

本文介绍如何使用Java的Apache POI库来创建Excel文件,并重点讲解如何正确地格式化日期时间单元格。通过设置单元格样式和数据格式,可以确保日期时间以指定格式展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面是一个简单的小例子,利用poi进行保存excel操作。

    package com.cn;  
      
    import org.apache.poi.hssf.usermodel.HSSFCell;  
    import org.apache.poi.hssf.usermodel.HSSFRow;  
    import org.apache.poi.hssf.usermodel.HSSFSheet;  
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;  
      
    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import java.util.Date;  
      
    public class CellTypes {  
     public static void main(String[] args) throws IOException {  
         HSSFWorkbook wb = new HSSFWorkbook();  
         HSSFSheet sheet = wb.createSheet("new sheet");  
         HSSFRow row = sheet.createRow(2);  
         row.createCell(0).setCellValue(1.1);  
         row.createCell(1).setCellValue(new Date());  
         row.createCell(2).setCellValue("a string");  
         row.createCell(3).setCellValue(true);  
         row.createCell(4).setCellType(HSSFCell.CELL_TYPE_ERROR);  
      
         FileOutputStream fileOut = new FileOutputStream("d:\\workbook.xls");  
         wb.write(fileOut);  
         fileOut.close();  
     }  
    }  


下面的是运行结果


在运行结果中发现时间的显示是正常的时间,怎么格式化时间呢?

下面的例子就是格式化时间

    package com.cn;  
      
    import org.apache.poi.hssf.usermodel.HSSFCell;  
    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.ss.usermodel.Cell;  
    import org.apache.poi.ss.usermodel.CellStyle;  
    import org.apache.poi.ss.usermodel.CreationHelper;  
      
    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import java.util.Date;  
      
    public class CellTypes {  
     public static void main(String[] args) throws IOException {  
         HSSFWorkbook wb = new HSSFWorkbook();  
         HSSFSheet sheet = wb.createSheet("new sheet");  
           
         HSSFRow row = sheet.createRow(2);  
         row.createCell(0).setCellValue(1.1);  
         Cell cell = row.createCell(1);  
         cell.setCellValue(new Date());  
         CreationHelper createHelper = wb.getCreationHelper();  
         CellStyle cellStyle = wb.createCellStyle();  
         cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("yyyy-MM-dd"));  
         cell.setCellStyle(cellStyle);  
           
         row.createCell(2).setCellValue("a string");  
         row.createCell(3).setCellValue(true);  
         row.createCell(4).setCellType(HSSFCell.CELL_TYPE_ERROR);  
      
         FileOutputStream fileOut = new FileOutputStream("d:\\workbook.xls");  
         wb.write(fileOut);  
         fileOut.close();  
     }  
    }  

运行结果如下:


来自:blog.youkuaiyun.com/snrqtdhuqf/article/details/7090018


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值