poi设置单元格日期格式(poi设置excel单元格属性)

需要格式化EXCEL单元格的一些操作总结可用于POI:

先获取工作薄对象:

HSSFWorkbook wb = new HSSFWorkbook();

HSSFSheet sheet = wb.createSheet();

HSSFCellStyle setBorder = wb.createCellStyle();

一、设置背景色:

setBorder.setFillForegroundColor((short) 13);// 设置背景色

setBorder.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

二、设置边框:

setBorder.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框

setBorder.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框

setBorder.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框

setBorder.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框

三、设置居中:

setBorder.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中

四、设置字体:

HSSFFont font = wb.createFont();

font.setFontName(“黑体”);

font.setFontHeightInPoints((short) 16);//设置字体大小

HSSFFont font2 = wb.createFont();

font2.setFontName(“仿宋_GB2312”);

font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示

font2.setFontHeightInPoints((short) 12);

setBorder.setFont(font);//选择需要用到的字体格式

五、设置列宽:

sheet.setColumnWidth(0, 3766); //第一个参数代表列id(从0开始),第2个参数代表宽度值

六、设置自动换行:

setBorder.setWrapText(true);//设置自动换行

七、合并单元格:

Region region1 = new Region(0, (short) 0, 0, (short) 6);

//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号

sheet.addMergedRegion(region1);

附一个完整的例子:

package cn.com.util;

import org.apache.poi.hssf.usermodel.HSSFCellStyle;

import org.apache.poi.hssf.usermodel.HSSFFont;

import org.apache.poi.hssf.usermodel.HSSFRichTextString;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.hssf.usermodel.HSSFSheet;

import org.apache.poi.hssf.usermodel.HSSFRow;

import org.apache.poi.hssf.usermodel.HSSFCell;

import org.apache.poi.hssf.util.CellRangeAddress;

import org.apache.poi.hssf.util.Region;

import org.apache.poi.ss.usermodel.CellStyle;

import java.io.FileOutputStream;

import javax.servlet.http.HttpServlet;

public class CreateXL extends HttpServlet {

/** Excel 文件要存放的位置,假定在D盘下 */

public static String outputFile = “c:test.xls”;

private void cteateCell(HSSFWorkbook wb, HSSFRow row, short col, String val) {

HSSFCell cell = row.createCell(col);

// cell.setEncoding(HSSFCell.ENCODING_UTF_16);

cell.setCellValue(val);

HSSFCellStyle cellstyle = wb.createCellStyle();

cellstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER_SELECTION);

cell.setCellStyle(cellstyle);

public static void main(String argv[]) {

try {

// 创建新的Excel 工作簿

HSSFWorkbook workbook = new HSSFWorkbook();

// 设置字体

HSSFFont font = workbook.createFont();

// font.setColor(HSSFFont.COLOR_RED);

font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

font.setFontHeightInPoints((short) 14);

// HSSFFont font2 = workbook.createFont();

// font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

// font.setFontHeightInPoints((short)14);

// 设置样式

HSSFCellStyle cellStyle = workbook.createCellStyle();

cellStyle.setFont(font);

cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);

// HSSFCellStyle cellStyle2= workbook.createCellStyle();

// cellStyle.setFont(font2);

// cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);

// 在Excel工作簿中建一工作表,其名为缺省值

// 如要新建一名为”月报表”的工作表,其语句为:

HSSFSheet sheet = workbook.createSheet(“月报表”);

CellRangeAddress cellRangeAddress = new CellRangeAddress(0, 0, 0,

11);

sheet.addMergedRegion(cellRangeAddress);

//第一行

// 在索引0的位置创建行(最顶端的行)

HSSFRow row = sheet.createRow(0);

// 在索引0的位置创建单元格(左上端)

HSSFCell cell = row.createCell(0);

// 定义单元格为字符串类型

cell.setCellType(HSSFCell.CELL_TYPE_STRING);

cell.setCellStyle(cellStyle);

// 在单元格中输入一些内容

cell.setCellValue(new HSSFRichTextString(“北京亿卡联科技发展有限公司小区门禁维修月报表”));

//第二行

cellRangeAddress = new CellRangeAddress(1, 1, 3, 6);

sheet.addMergedRegion(cellRangeAddress);

row = sheet.createRow(1);

HSSFCell datecell = row.createCell(3);

datecell.setCellType(HSSFCell.CELL_TYPE_STRING);

datecell.setCellStyle(cellStyle);

datecell.setCellValue(“时间间隔xxxxx”);

cellRangeAddress = new CellRangeAddress(1, 1, 9,

10);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(9).setCellValue(“单位:元”);

//第三行

row=sheet.createRow(2);

row.createCell(0).setCellValue(“一、”);

row.createCell(1).setCellValue(“基本资料”);

//第4行

row=sheet.createRow(3);

row.createCell(1).setCellValue(“小区名称:”);

cellRangeAddress=new CellRangeAddress(3,3,2,11);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(2).setCellValue(“xxxxx”);

//第5行

row=sheet.createRow(4);

row.createCell(1).setCellValue(“座落地点:”);

cellRangeAddress=new CellRangeAddress(4,4,2,11);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(2).setCellValue(“xxxxx”);

//第6行

row=sheet.createRow(5);

row.createCell(1).setCellValue(“建成年月:”);

cellRangeAddress=new CellRangeAddress(5,5,2,4);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(2).setCellValue(“年月日:xxxxx”);

row.createCell(5).setCellValue(“联系人”);

cellRangeAddress=new CellRangeAddress(5,5,6,8);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(6).setCellValue(“XXX”);

row.createCell(9).setCellValue(“电话”);

cellRangeAddress=new CellRangeAddress(5,5,10,11);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(10).setCellValue(“XXX”);

//第7行

row=sheet.createRow(6);

row.createCell(1).setCellValue(“住户:”);

row.createCell(2).setCellValue(“(XX)”);

row.createCell(3).setCellValue(“(户)”);

cellRangeAddress=new CellRangeAddress(6,6,4,5);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(4).setCellValue(“共计( )”);

row.createCell(6).setCellValue(“幢”);

cellRangeAddress=new CellRangeAddress(6,6,7,8);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(7).setCellValue(“发卡张数”);

cellRangeAddress=new CellRangeAddress(6,6,9,10);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(9).setCellValue(“xxxx”);

//第9行

row=sheet.createRow(8);

row.createCell(0).setCellValue(“二、”);

cellRangeAddress=new CellRangeAddress(8,8,1,2);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(1).setCellValue(“维修用材料台账”);

row.createCell(6).setCellValue(“三、”);

cellRangeAddress=new CellRangeAddress(8,8,7,9);

sheet.addMergedRegion(cellRangeAddress);

row.createCell(7).setCellValue(“维修工时记录”);

//第10行

row=sheet.createRow(9);

row.createCell(0).setCellValue(“日期”);

row.createCell(1).setCellValue(“维修事项”);

row.createCell(2).setCellValue(“材料清单”);

row.createCell(3).setCellValue(“数量”);

row.createCell(4).setCellValue(“单价”);

row.createCell(5).setCellValue(“材料金额”);

row.createCell(7).setCellValue(“日期”);

row.createCell(8).setCellValue(“技工”);

row.createCell(9).setCellValue(“工时数”);

row.createCell(10).setCellValue(“单价”);

row.createCell(11).setCellValue(“工时金额”);

//填充数据

for (int i = 0; i < 10; i++) {

row=sheet.createRow(9+i+1);

row.createCell(0).setCellValue(“日期”);

row.createCell(1).setCellValue(“维修事项”);

row.createCell(2).setCellValue(“材料清单”);

row.createCell(3).setCellValue(“数量”);

row.createCell(4).setCellValue(“单价”);

row.createCell(5).setCellValue(“材料金额”);

row.createCell(7).setCellValue(“日期”);

row.createCell(8).setCellValue(“技工”);

row.createCell(9).setCellValue(“工时数”);

row.createCell(10).setCellValue(“单价”);

row.createCell(11).setCellValue(“工时金额”);

//第n+10行

row=sheet.createRow(9+10+1);

//cellRangeAddress=new CellRangeAddress(19,19,0,4);

//sheet.addMergedRegion(cellRangeAddress);

row.createCell(0).setCellValue(“累计:”);

row.createCell(1).setCellValue(“xxx”);

row.createCell(7).setCellValue(“累计:”);

row.createCell(8).setCellValue(“xxx”);

// 新建一输出文件流

FileOutputStream fOut = new FileOutputStream(outputFile);

// 把相应的Excel 工作簿存盘

workbook.write(fOut);

fOut.flush();

// 操作结束,关闭文件

fOut.close();

System.out.println(“文件生成…”);

} catch (Exception e) {

System.out.println(“已运行 xlCreate() : ” + e);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 86345@qq.com 举报,一经查实,本站将立刻删除。
(0)
上一篇 2022-04-18 20:50:09
下一篇 2022-04-18 21:00:04

猜你喜欢

  • 聚苯乙烯市场行情怎么样,聚苯乙烯震荡走跌

    就历史数据而言,无论是从价格、进出口还是消费情况来看,2015年聚苯乙烯市场都处窘迫境况,产业链盈利不佳。聚苯乙烯企业开工不足,产量下滑;国内外经济环境不理想,进出口速度放缓;受化…

    2023-08-12
  • 贴春联有大讲究:牢记这五点,来年万事顺利!

    春节,被称为“百节之首”。 在中国历史文明中,喜迎春节的各种民间习俗很多,至今保存的最大习俗之一就是写春联、贴春联了。 每年腊月年三十,家家户户都会在大门两侧贴上崭新的春联,表达着…

    2024-08-19
  • 如何看脸选发型_记住这些步骤

    想要从丑小鸭变成天鹅,最困难的就是选择发型了吧?不论在哪个季节,衣服不好看,可以随时换掉;但发型一旦踩雷,可就得和“土气”相随很长一段时间了…… 每个女孩心中都有一段“公主梦”,那…

    2023-02-19
  • 是内向还是外向更好_内向和外向的真正含义

    想想一个理想的夜晚对你来说是什么样子的。你想象自己和一大群朋友出去吃饭,参加音乐会,还是去聚会?还是你宁愿花一个晚上的时间与一个亲密的朋友聊天,或者迷失在一本好书中?心理学家认为我…

    投稿 2023-04-30
  • 电脑使用u盘记录怎么彻底删除(在u盘删除记录电脑会保存吗)

    使用u盘后,我们会将相关信息记录在电脑中。我们如何安全地删除这些信息以保护我们的隐私?让我们跟随它。 一、先往系统里面添加环境变量devmgr_shownonpresent_dev…

    投稿 2022-05-02
  • 酸辣土豆丝怎么炒好吃_一分钟秒变小厨神

      酸辣土豆丝是一道人见人爱的一道家常菜,制作原料有土豆、辣椒、白醋、陈醋等,虽然价格便宜,但是酸辣可口味道味道却是大家喜爱的。无论是家庭餐桌、还是饭馆酒店几乎都能见到它的身影! …

    2022-04-09
  • 宝华利是什么酒_宝华利有酒精吗

    鲍莉是一种啤酒,最早创立于1719年。自1719年以来,斯旺克斯家族一直向周边地区的人们供应啤酒。1990年,鲍莉推出了真正100%不含酒精的啤酒“果味麦芽汁”,并成功获得了当年的…

    2022-08-05
  • 办理icp资格要多少钱,icp营业执照代理费

    办理icp资格要多少钱? icp营业执照代理费 大部分地区在2000-3000元之间。为什么费用不同?而广东需要好几万? ● 有的省份要求企业有计算机证书的员工,有的省份没有。 ●…

    2023-08-08
  • Excel公式错误代码(excel公式显示错误怎么解决)

    如果Excel2007公式是错误的,在单元格中会显示各种错误信息。看到这些奇怪的错误代码,有些朋友可能会很着急,甚至觉得很烦。 其实,任何错误均有它内在的原因,下面我们就和大家探讨…

    投稿 2022-04-18
  • 墙壁开关接线方法_墙壁开关插座接线

    墙壁开关是用来开关电路和控制照明灯的开关,是一种家庭装饰功能性物品。我们见过很多开关,但相信很多的人对它们的接线方式知之甚少。今天为大家带来墙壁开关的接线方法和墙壁开关接线图。有兴…

    2022-09-24

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注