POI--HSSFCellStyle类

  • 通过POI来进行单元格格式的设定

设定格式使用「HSSFCellStyle」类。它有一个构造方法:

protected HSSFCellStyle(short index, ExtendedFormatRecord rec)

虽然有构造方法,但却是protected的,所以不能直接使用,要通过一个工作簿workbook来生成格式对象。

在POI里,格式好像是以workbook为单位来管理的,所以要先作成一个格式对象,保存在workbook里,然后再对已生成好的单元格进行设定。 

  • 在单元格里指定格式

1,要作成一个格式对象,可以使用「HSSFWorkbook」类的「createCellStyle」方法。

public HSSFCellStyle createCellStyle()

2,要取出现有的格式对象的话,使用「HSSFWorkbook」类的「getCellStyleAt」方法,这个方法有参数,是被保存格式的INDEX号。

public HSSFCellStyle getCellStyleAt(short idx)

3,对于某一个单元格,也可以取出它的格式对象。这时要使用「HSSFCell」类的「getCellStyle」方法。

public HSSFCellStyle getCellStyle()

4,这样的话,不管是新创建的或者是从现有的单元格里取出来的格式对象,都可以用来对某一个单元格进行格式的设定。设定方法使用「HSSFCell」类的「setCellStyle」方法。

public void setCellStyle(HSSFCellStyle style)

package linkin;

import java.io.FileOutputStream;
import java.io.IOException;

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.poi.hssf.util.HSSFColor;

public class Linkin
{
	public static void main(String[] args)
	{
		HSSFWorkbook workbook = new HSSFWorkbook();

		HSSFSheet sheet = workbook.createSheet();
		HSSFRow row = sheet.createRow(1);//第二行

		HSSFCell cell = row.createCell(0);//2,1格
		cell.setCellValue("sample");//写入sample

		HSSFCellStyle style = workbook.createCellStyle();//创建个workbook的HSSFCellStyle格式对象style

		//设定格式
		style.setFillBackgroundColor(HSSFColor.WHITE.index);
		style.setFillForegroundColor(HSSFColor.LIGHT_ORANGE.index);
		style.setFillPattern(HSSFCellStyle.THICK_HORZ_BANDS);

		cell.setCellStyle(style);//对2,1格写入上面的格式

		FileOutputStream out = null;
		try
		{
			out = new FileOutputStream("sample.xls");
			workbook.write(out);
		}
		catch (IOException e)
		{
			System.out.println(e.toString());
		}
		finally
		{
			try
			{
				out.close();
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
		}
	}
}

 

  • POI单元格颜色设定

先从单元格顔色设定开始介绍。单元格的顔色有前景色和背景色。

1,前景色的设定使用「HSSFCellStyle」类的「setFillForegroundColor」方法。

public void setFillForegroundColor(short bg)

2,背景色的设定则使用「HSSFCellStyle」类的「setFillBackgroundColor」方法。

public void setFillBackgroundColor(short bg)

两个方法都是通过参数来设定具体什么顔色。该参数类型为short型,在「HSSFColor」类里,准备了各种各样顔色的定义值。 

  • HSSFColor类

HSSFColor类定义如下:public class HSSFColor extends java.lang.Object

而各种顔色又是作为HSSFColor类的子类,定义一览表如下:

HSSFColor.AQUA    HSSFColor.BLACK

HSSFColor.BLUE    
HSSFColor.BLUE_GREY

HSSFColor.BRIGHT_GREEN HSSFColor.BROWN

HSSFColor.CORAL HSSFColor.CORNFLOWER_BLUE

HSSFColor.DARK_BLUE HSSFColor.DARK_GREEN

HSSFColor.DARK_RED HSSFColor.DARK_TEAL

HSSFColor.DARK_YELLOW HSSFColor.GOLD

HSSFColor.GREEN HSSFColor.GREY_25_PERCENT

HSSFColor.GREY_40_PERCENT HSSFColor.GREY_50_PERCENT

HSSFColor.GREY_80_PERCENT HSSFColor.INDIGO

HSSFColor.LAVENDER HSSFColor.LEMON_CHIFFON

HSSFColor.LIGHT_BLUE HSSFColor.LIGHT_CORNFLOWER_BLUE

HSSFColor.LIGHT_GREEN HSSFColor.LIGHT_ORANGE

HSSFColor.LIGHT_TURQUOISE HSSFColor.LIGHT_YELLOW

HSSFColor.LIME HSSFColor.MAROON

HSSFColor.OLIVE_GREEN HSSFColor.ORANGE

HSSFColor.ORCHID HSSFColor.PALE_BLUE

HSSFColor.PINK HSSFColor.PLUM

HSSFColor.RED HSSFColor.ROSE

HSSFColor.ROYAL_BLUE HSSFColor.SEA_GREEN

HSSFColor.SKY_BLUE HSSFColor.TAN

HSSFColor.TEAL HSSFColor.TURQUOISE

HSSFColor.VIOLET HSSFColor.WHITE

HSSFColor.YELLOW

设定顔色时,用这些子类的静态常量「index」作为参数,使用方法如下:

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFCellStyle style = workbook.createCellStyle();
style.setFillForegroundColor(HSSFColor.LIME.index);
style.setFillBackgroundColor(HSSFColor.GREEN.index);

如果这些顔色还不够你用的话,那么下面介绍怎么设定自己想要的顔色。

  • 填充模式

1,指定填充模式的话,使用「HSSFCellStyle」类的「setFillPattern」方法。

public void setFillPattern(short fp)

2,指定的填充模式,在「HSSFCellStyle」类里也有定义,类型为static short型,如下所示:

值 说明

NO_FILL No background

SOLID_FOREGROUND Solidly filled

FINE_DOTS Small fine dots

ALT_BARS Wide dots

SPARSE_DOTS Sparse dots

THICK_HORZ_BANDS Thick horizontal bands

THICK_VERT_BANDS Thick vertical bands

THICK_BACKWARD_DIAG Thick backward facing diagonals

THICK_FORWARD_DIAG Thick forward facing diagonals

BIG_SPOTS Large spots

BRICKS Brick-like layout

THIN_HORZ_BANDS Thin horizontal bands

THIN_VERT_BANDS Thin vertical bands

THIN_BACKWARD_DIAG Thin backward diagonal

THIN_FORWARD_DIAG Thin forward diagonal

SQUARES Squares

DIAMONDS Diamonds

  • 实际的使用方法如下: 
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFCellStyle style = workbook.createCellStyle();
style.setFillForegroundColor(HSSFColor.LIME.index);
style.setFillBackgroundColor(HSSFColor.GREEN.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
package linkin;

import java.io.FileOutputStream;
import java.io.IOException;

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.poi.hssf.util.HSSFColor;

public class Linkin
{
	static HSSFWorkbook workbook;

	public static void main(String[] args)
	{
		workbook = new HSSFWorkbook();

		HSSFSheet sheet = workbook.createSheet();

		HSSFRow row[] = new HSSFRow[12];
		for (int i = 0; i < 12; i++)
		{
			row[i] = sheet.createRow(i);
		}

		HSSFCell cell[][] = new HSSFCell[12][4];
		for (int i = 0; i < 12; i++)
		{
			for (int j = 0; j < 4; j++)
			{
				cell[i][j] = row[i].createCell((short) j);
			}
		}

		setStyle(cell[0][0], "AQUA", HSSFColor.AQUA.index);
		setStyle(cell[0][1], "BLACK", HSSFColor.BLACK.index);
		setStyle(cell[0][2], "BLUE", HSSFColor.BLUE.index);
		setStyle(cell[0][3], "BLUE_GREY", HSSFColor.BLUE_GREY.index);
		setStyle(cell[1][0], "BRIGHT_GREEN", HSSFColor.BRIGHT_GREEN.index);
		setStyle(cell[1][1], "BROWN", HSSFColor.BROWN.index);
		setStyle(cell[1][2], "CORAL", HSSFColor.CORAL.index);
		setStyle(cell[1][3], "CORNFLOWER_BLUE", HSSFColor.CORNFLOWER_BLUE.index);
		setStyle(cell[2][0], "DARK_BLUE", HSSFColor.DARK_BLUE.index);
		setStyle(cell[2][1], "DARK_GREEN", HSSFColor.DARK_GREEN.index);
		setStyle(cell[2][2], "DARK_RED", HSSFColor.DARK_RED.index);
		setStyle(cell[2][3], "DARK_TEAL", HSSFColor.DARK_TEAL.index);
		setStyle(cell[3][0], "DARK_YELLOW", HSSFColor.DARK_YELLOW.index);
		setStyle(cell[3][1], "GOLD", HSSFColor.GOLD.index);
		setStyle(cell[3][2], "GREEN", HSSFColor.GREEN.index);
		setStyle(cell[3][3], "GREY_25_PERCENT", HSSFColor.GREY_25_PERCENT.index);
		setStyle(cell[4][0], "GREY_40_PERCENT", HSSFColor.GREY_40_PERCENT.index);
		setStyle(cell[4][1], "GREY_50_PERCENT", HSSFColor.GREY_50_PERCENT.index);
		setStyle(cell[4][2], "GREY_80_PERCENT", HSSFColor.GREY_80_PERCENT.index);
		setStyle(cell[4][3], "INDIGO", HSSFColor.INDIGO.index);
		setStyle(cell[5][0], "LAVENDER", HSSFColor.LAVENDER.index);
		setStyle(cell[5][1], "LEMON_CHIFFON", HSSFColor.LEMON_CHIFFON.index);
		setStyle(cell[5][2], "LIGHT_BLUE", HSSFColor.LIGHT_BLUE.index);
		setStyle(cell[5][3], "LIGHT_CORNFLOWER_BLUE", HSSFColor.LIGHT_CORNFLOWER_BLUE.index);
		setStyle(cell[6][0], "LIGHT_GREEN", HSSFColor.LIGHT_GREEN.index);
		setStyle(cell[6][1], "LIGHT_ORANGE", HSSFColor.LIGHT_ORANGE.index);
		setStyle(cell[6][2], "LIGHT_TURQUOISE", HSSFColor.LIGHT_TURQUOISE.index);
		setStyle(cell[6][3], "LIGHT_YELLOW", HSSFColor.LIGHT_YELLOW.index);
		setStyle(cell[7][0], "LIME", HSSFColor.LIME.index);
		setStyle(cell[7][1], "MAROON", HSSFColor.MAROON.index);
		setStyle(cell[7][2], "OLIVE_GREEN", HSSFColor.OLIVE_GREEN.index);
		setStyle(cell[7][3], "ORANGE", HSSFColor.ORANGE.index);
		setStyle(cell[8][0], "ORCHID", HSSFColor.ORCHID.index);
		setStyle(cell[8][1], "PALE_BLUE", HSSFColor.PALE_BLUE.index);
		setStyle(cell[8][2], "PINK", HSSFColor.PINK.index);
		setStyle(cell[8][3], "PLUM", HSSFColor.PLUM.index);
		setStyle(cell[9][0], "RED", HSSFColor.RED.index);
		setStyle(cell[9][1], "ROSE", HSSFColor.ROSE.index);
		setStyle(cell[9][2], "ROYAL_BLUE", HSSFColor.ROYAL_BLUE.index);
		setStyle(cell[9][3], "SEA_GREEN", HSSFColor.SEA_GREEN.index);
		setStyle(cell[10][0], "SKY_BLUE", HSSFColor.SKY_BLUE.index);
		setStyle(cell[10][1], "TAN", HSSFColor.TAN.index);
		setStyle(cell[10][2], "TEAL", HSSFColor.TEAL.index);
		setStyle(cell[10][3], "TURQUOISE", HSSFColor.TURQUOISE.index);
		setStyle(cell[11][0], "VIOLET", HSSFColor.VIOLET.index);
		setStyle(cell[11][1], "WHITE", HSSFColor.WHITE.index);
		setStyle(cell[11][2], "YELLOW", HSSFColor.YELLOW.index);

		FileOutputStream out = null;
		try
		{
			out = new FileOutputStream("sample.xls");
			workbook.write(out);
		}
		catch (IOException e)
		{
			System.out.println(e.toString());
		}
		finally
		{
			try
			{
				out.close();
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
		}
	}

	public static void setStyle(HSSFCell cell, String col, short fg)
	{
		HSSFCellStyle style = workbook.createCellStyle();
		style.setFillForegroundColor(fg);
		style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
		cell.setCellStyle(style);

		cell.setCellValue(col);
	}
}

上面程序只指定了「ForegroundColor」,填充模式是「SOLID_FOREGROUND」,因此顔色应该是全部充满整个单元格的

package linkin;

import java.io.FileOutputStream;
import java.io.IOException;

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.poi.hssf.util.HSSFColor;

public class Linkin
{
	static HSSFWorkbook workbook;

	public static void main(String[] args)
	{
		workbook = new HSSFWorkbook();

		HSSFSheet sheet = workbook.createSheet();

		HSSFRow row[] = new HSSFRow[5];
		for (int i = 0; i < 5; i++)
		{
			row[i] = sheet.createRow(i);
		}

		HSSFCell cell[][] = new HSSFCell[5][4];
		for (int i = 0; i < 5; i++)
		{
			for (int j = 0; j < 4; j++)
			{
				cell[i][j] = row[i].createCell((short) j);
			}
		}

		setStyle(cell[0][0], "NO_FILL", HSSFCellStyle.NO_FILL);
		setStyle(cell[0][1], "SOLID_FOREGROUND", HSSFCellStyle.SOLID_FOREGROUND);
		setStyle(cell[0][2], "FINE_DOTS", HSSFCellStyle.FINE_DOTS);
		setStyle(cell[0][3], "ALT_BARS", HSSFCellStyle.ALT_BARS);

		setStyle(cell[1][0], "SPARSE_DOTS", HSSFCellStyle.SPARSE_DOTS);
		setStyle(cell[1][1], "THICK_HORZ_BANDS", HSSFCellStyle.THICK_HORZ_BANDS);
		setStyle(cell[1][2], "THICK_VERT_BANDS", HSSFCellStyle.THICK_VERT_BANDS);
		setStyle(cell[1][3], "THICK_BACKWARD_DIAG", HSSFCellStyle.THICK_BACKWARD_DIAG);

		setStyle(cell[2][0], "THICK_FORWARD_DIAG", HSSFCellStyle.THICK_FORWARD_DIAG);
		setStyle(cell[2][1], "BIG_SPOTS", HSSFCellStyle.BIG_SPOTS);
		setStyle(cell[2][2], "BRICKS", HSSFCellStyle.BRICKS);
		setStyle(cell[2][3], "THIN_HORZ_BANDS", HSSFCellStyle.THIN_HORZ_BANDS);

		setStyle(cell[3][0], "THIN_VERT_BANDS", HSSFCellStyle.THIN_VERT_BANDS);
		setStyle(cell[3][1], "THIN_BACKWARD_DIAG", HSSFCellStyle.THIN_BACKWARD_DIAG);
		setStyle(cell[3][2], "THIN_FORWARD_DIAG", HSSFCellStyle.THIN_FORWARD_DIAG);
		setStyle(cell[3][3], "SQUARES", HSSFCellStyle.SQUARES);

		setStyle(cell[4][0], "DIAMONDS", HSSFCellStyle.DIAMONDS);

		FileOutputStream out = null;
		try
		{
			out = new FileOutputStream("sample.xls");
			workbook.write(out);
		}
		catch (IOException e)
		{
			System.out.println(e.toString());
		}
		finally
		{
			try
			{
				out.close();
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
		}
	}

	public static void setStyle(HSSFCell cell, String fps, short fp)
	{
		HSSFCellStyle style = workbook.createCellStyle();
		style.setFillForegroundColor(HSSFColor.WHITE.index);
		style.setFillForegroundColor(HSSFColor.LIGHT_ORANGE.index);
		style.setFillPattern(fp);
		cell.setCellStyle(style);

		cell.setCellValue(fps);
	}
}

上面固定了「ForegroundColor」和「BackgroundColor」,而填充模式则做了各种尝试

  • POI设置边框

在做一个电子表格时,边框的设置有时是必不可少的。这一节就来介绍边框,设置时,可以指定边框的位置,边框的种类,边框的顔色。 首先是边框的位置和种类。对单元格设置边框时,有上下左右位置之分,所以POI也准备了四个不同的方法。

上部的边框: public void setBorderTop(short border)

下部的边框: public void setBorderBottom(short border)

左侧的边框: public void setBorderLeft(short border)

右侧的边框: public void setBorderRight(short border)

参数通过表示边框种类的short型值来指定。下面是定义在「HSSFCellStyle」类里可以被指定值的一览表。

值 说明

BORDER_DASH_DOT dash-dot border

BORDER_DASH_DOT_DOT dash-dot-dot border

BORDER_DASHED dash border

BORDER_DOTTED dot borderhair-line border

BORDER_DOUBLE double-line border

BORDER_HAIR hair-line border

BORDER_MEDIUM Medium border

BORDER_MEDIUM_DASH_DOT medium dash-dot border

BORDER_MEDIUM_DASH_DOT_DOT medium dash-dot-dot border

BORDER_MEDIUM_DASHED Medium dashed border

BORDER_NONE No border

BORDER_SLANTED_DASH_DOT slanted dash-dot border

BORDER_THICK Thick border

BORDER_THIN Thin border

比如要在单元格下边框设置两重线的边框时,按如下方法:

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFCellStyle style = workbook.createCellStyle();
style.setBorderRight(HSSFCellStyle.BORDER_THIN);

下面再看看指定边框顔色。同样也分为上下左右边框来操作。

上部的边框: public void setTopBorderColor(short color)

下部的边框: public void setBottomBorderColor(short color)

左侧的边框: public void setLeftBorderColor(short color)

右侧的边框: public void setRightBorderColor(short color)

仍然是通过参数来指定顔色,而且使用方法和前面一节也是一样。具体如下:

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFCellStyle style = workbook.createCellStyle();
style.setRightBorderColor(HSSFColor.RED.index);
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
package linkin;

import java.io.FileOutputStream;
import java.io.IOException;

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.poi.hssf.util.HSSFColor;

public class Linkin
{
	public static void main(String[] args)
	{
		HSSFWorkbook workbook = new HSSFWorkbook();
		HSSFSheet sheet = workbook.createSheet();

		HSSFRow row = sheet.createRow(1);
		HSSFCell cell1 = row.createCell((short) 1);
		HSSFCell cell2 = row.createCell((short) 2);

		HSSFCellStyle style1 = workbook.createCellStyle();
		style1.setBorderTop(HSSFCellStyle.BORDER_DOUBLE);
		style1.setBorderLeft(HSSFCellStyle.BORDER_DOUBLE);
		style1.setTopBorderColor(HSSFColor.GOLD.index);
		style1.setLeftBorderColor(HSSFColor.PLUM.index);
		cell1.setCellStyle(style1);

		HSSFCellStyle style2 = workbook.createCellStyle();
		style2.setBorderBottom(HSSFCellStyle.BORDER_DOUBLE);
		style2.setBorderRight(HSSFCellStyle.BORDER_DOUBLE);
		style2.setBottomBorderColor(HSSFColor.ORANGE.index);
		style2.setRightBorderColor(HSSFColor.SKY_BLUE.index);
		cell2.setCellStyle(style2);

		cell1.setCellValue("U & L");
		cell2.setCellValue("B & R");

		FileOutputStream out = null;
		try
		{
			out = new FileOutputStream("sample.xls");
			workbook.write(out);
		}
		catch (IOException e)
		{
			System.out.println(e.toString());
		}
		finally
		{
			try
			{
				out.close();
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
		}
	}
}

上面程序既改了顔色,也设置了上和左的边框各一个,右和下的边框各一个。

package linkin;

import java.io.FileOutputStream;
import java.io.IOException;

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.poi.hssf.util.HSSFColor;

public class Linkin
{
	static HSSFWorkbook workbook;

	public static void main(String[] args)
	{
		workbook = new HSSFWorkbook();

		HSSFSheet sheet = workbook.createSheet();

		HSSFRow row[] = new HSSFRow[5];
		for (int i = 0; i < 5; i++)
		{
			row[i] = sheet.createRow(i);
		}

		HSSFCell cell[][] = new HSSFCell[5][3];
		for (int i = 0; i < 5; i++)
		{
			for (int j = 0; j < 3; j++)
			{
				cell[i][j] = row[i].createCell((short) j);
			}
		}

		setStyle(cell[0][0], "DASH_DOT", HSSFCellStyle.BORDER_DASH_DOT);
		setStyle(cell[0][1], "DASH_DOT_DOT", HSSFCellStyle.BORDER_DASH_DOT_DOT);
		setStyle(cell[0][2], "DASHED", HSSFCellStyle.BORDER_DASHED);

		setStyle(cell[1][0], "DOTTED", HSSFCellStyle.BORDER_DOTTED);
		setStyle(cell[1][1], "DOUBLE", HSSFCellStyle.BORDER_DOUBLE);
		setStyle(cell[1][2], "HAIR", HSSFCellStyle.BORDER_HAIR);

		setStyle(cell[2][0], "MEDIUM", HSSFCellStyle.BORDER_MEDIUM);
		setStyle(cell[2][1], "MEDIUM_DASH_DOT", HSSFCellStyle.BORDER_MEDIUM_DASH_DOT);
		setStyle(cell[2][2], "MEDIUM_DASH_DOT_DOT", HSSFCellStyle.BORDER_MEDIUM_DASH_DOT_DOT);

		setStyle(cell[3][0], "MEDIUM_DASHED", HSSFCellStyle.BORDER_MEDIUM_DASHED);
		setStyle(cell[3][1], "NONE", HSSFCellStyle.BORDER_NONE);
		setStyle(cell[3][2], "SLANTED_DASH_DOT", HSSFCellStyle.BORDER_SLANTED_DASH_DOT);

		setStyle(cell[4][0], "THICK", HSSFCellStyle.BORDER_THICK);
		setStyle(cell[4][1], "THIN", HSSFCellStyle.BORDER_THIN);

		FileOutputStream out = null;
		try
		{
			out = new FileOutputStream("sample.xls");
			workbook.write(out);
		}
		catch (IOException e)
		{
			System.out.println(e.toString());
		}
		finally
		{
			try
			{
				out.close();
			}
			catch (IOException e)
			{
				System.out.println(e.toString());
			}
		}
	}

	public static void setStyle(HSSFCell cell, String bn, short border)
	{
		HSSFCellStyle style = workbook.createCellStyle();
		style.setBorderBottom(border);
		style.setBottomBorderColor(HSSFColor.ORANGE.index);
		cell.setCellStyle(style);

		cell.setCellValue(bn);
	}
}

时间: 2024-10-25 20:16:35

POI--HSSFCellStyle类的相关文章

POI工具类

package com.ysq.ssm.poi; import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFFont;import org.apache.poi.hssf.usermodel.HSSFPalette;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.user

poi 工具类

<!--POI--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.0.1</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifa

使用Apache POI导出Excel小结--导出XLS格式文档

使用Apache POI导出Excel小结 关于使用Apache POI导出Excel我大概会分三篇文章去写 使用Apache POI导出Excel小结--导出XLS格式文档 使用Apache POI导出Excel小结--导出XLSX格式文档 使用Apache POI导出Excel--大数量导出 导出XLS格式文档 做企业应用项目难免会有数据导出到Excel的需求,最近在使用其,并对导出Excel封装成工具类开放出来供大家参考.关于Apache POI Excel基本的概念与操作我在这里就不啰嗦

【Java POI】1、Java POI的使用

很多时候,一个软件应用程序需要生成Microsoft Excel文件格式的报告.有时,一个应用程序甚至希望将Excel文件作为输入数据.例如,一个公司开发的应用程序将财务部门需要所有输出生成自己的Excel. 任何Java程序员愿意将MS Office文件的输出,可以使用预定义和只读API来做到. 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件.这由Apache软件基金会开发使用Java分布式设计或修改Mi

[Utils]POI实现excel导入导出

1.分析excel 2.poi工具类 import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.s

poi导出excel

Java使用poi组件导出excel报表,能导出excel报表的还可以使用jxl组件,但jxl想对于poi功能有限,jxl应该不能载excel插入浮动层图片,poi能很好的实现输出excel各种功能,介绍poi导出excel功能实现案例,算比较常用的功能实现以及导出excel需要注意的地方,采用的是poi-3.8-20120326.jar,poi-ooxml-3.8-20120326.jar,poi-scratchpad-3.8-20120326.jar 输出表格 poi输出excel最基本是输

使用poi导出Excel

很多时候,一个软件应用程序需要生成Microsoft Excel文件格式的报告.有时,一个应用程序甚至希望将Excel文件作为输入数据. 常见的java Excel  API Java Aspose Cells Java Aspose Cells 是一种纯粹的Java授权的Excel API,开发和供应商Aspose发布.这个API的最新版本是8.1.2,发布于2014年7月,是一个丰富而厚重的API(普通Java类和AWT类的组合)设计,可以读.写和操纵电子表格Excel的组件.此API常见用

POI样式

5.POI样式 在Excel应用中,会需要用到各种样式,包括单元格背景色.边框.高度.宽度.内容相对位置.字体格式.字体大小.字体颜色等等.POI提供了一系列的样式,能满足我们一般开发中的需求. 5.1 POI样式相关类 POI设置Excel样式主要通过以下几个相关类: 参数 说明 HSSFCellStyle POI样式类 HSSFFont 字体样式类 HSSFColor 颜色类 HSSFBorderFormatting 边框样式类 HSSFCellStyle是最基本的样式类.HSSFCellS

Apache POI使用详解

Apache POI使用详解 1.POI结构与常用类 (1)POI介绍 Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能. (2)POI结构说明 包名称说明 HSSF提供读写Microsoft Excel XLS格式档案的功能. XSSF提供读写Microsoft Excel OOXM

POI使用详解

Apache POI使用详解 1.POI结构与常用类 (1)POI介绍 Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 Microsoft Office文档的功能. (2)POI结构说明 包名称说明 HSSF提供读写Microsoft Excel XLS格式档案的功能. XSSF提供读写Microsoft Excel OOXM