`

Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度

 
阅读更多

最近项目中需要用到导出Excel文件,以下是我写了一个通过jxl操作Excel的例子,熟悉Jxl的使用。

有一个比较难以处理的问题就是自动适应文本宽度的问题。

 

以下我也在网上找了一下 :有如下的方式处理:

CellView cellView = new CellView();  cellView.setAutosize(true); //设置自动大小  
sheet.setColumnView(1, cellView);//根据内容自动设置列宽  
label = new Label(1, 0, "单元格内容.");  
sheet.addCell(label);  

 

以下是Excel的基本操作:设置背景、字体颜色、对齐方式、列的宽度等等:

请看代码:

package com.java.demo;

import java.io.File;
import java.io.IOException;
import jxl.Workbook;
import jxl.format.Alignment;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.format.VerticalAlignment;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;

/**
 * 导出Excel实例:
 * @author Administrator
 *
 */
public class ExcelDemo {

	/**
	 * @param args
	 * @throws IOException 
	 * @throws WriteException 
	 * @throws RowsExceededException 
	 */
	public static void main(String[] args) throws IOException, RowsExceededException, WriteException {
		//创建Excel工作簿;
		WritableWorkbook workbook = Workbook.createWorkbook(new File("C:/ExcelDemo.xls"));

		//创建Excel电子薄;
		WritableSheet sheet = workbook.createSheet("第一个Sheet", 0);
		//分别给2,3,4列设置不同的宽度;
		sheet.setColumnView(1, 40);
		sheet.setColumnView(1, 30);
		sheet.setColumnView(2, 50);
		sheet.setColumnView(3, 20);

		//给sheet电子版中所有的列设置默认的列的宽度;
		sheet.getSettings().setDefaultColumnWidth(30);

		//设置字体;
		WritableFont font1 = new WritableFont(WritableFont.ARIAL,14,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.RED);

		WritableCellFormat cellFormat1 = new WritableCellFormat(font1);
		//设置背景颜色;
		cellFormat1.setBackground(Colour.BLUE_GREY);
		//设置边框;
		cellFormat1.setBorder(Border.ALL, BorderLineStyle.DASH_DOT);
		//设置自动换行;
		cellFormat1.setWrap(true);
		//设置文字居中对齐方式;
		cellFormat1.setAlignment(Alignment.CENTRE);
		//设置垂直居中;
		cellFormat1.setVerticalAlignment(VerticalAlignment.CENTRE);
		//创建单元格
		Label label1 = new Label(0, 0, "第一行第一个单元格(测试是否自动换行!)",cellFormat1);
		Label label2 = new Label(1, 0, "第一行第二个单元格",cellFormat1);
		Label label3 = new Label(2, 0, "第一行第三个单元格",cellFormat1);
		Label label4 = new Label(3, 0, "第一行第四个单元格",cellFormat1);
		//添加到行中;
		sheet.addCell(label1);
		sheet.addCell(label2);
		sheet.addCell(label3);
		sheet.addCell(label4);
		
		//给第二行设置背景、字体颜色、对齐方式等等;
		WritableFont font2 = new WritableFont(WritableFont.ARIAL,14,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.BLUE2);
		WritableCellFormat cellFormat2 = new WritableCellFormat(font2);
		cellFormat2.setAlignment(Alignment.CENTRE);
		cellFormat2.setBackground(Colour.PINK);
		cellFormat2.setBorder(Border.ALL, BorderLineStyle.THIN);
		cellFormat2.setWrap(true);

		//创建单元格;
		Label label11= new Label(0,  1, "第二行第一个单元格(测试是否自动换行!)",cellFormat2);
		Label label22 = new Label(1, 1, "第二行第二个单元格",cellFormat2);
		Label label33 = new Label(2, 1, "第二行第三个单元格",cellFormat2);
		Label label44 = new Label(3, 1, "第二行第四个单元格",cellFormat2);

		sheet.addCell(label11);
		sheet.addCell(label22);
		sheet.addCell(label33);
		sheet.addCell(label44);

		//写入Excel表格中;
		workbook.write();
		//关闭流;
		workbook.close();
	}
}

 

结果如下:



 

 

  • 大小: 48.6 KB
分享到:
评论
1 楼 贝塔ZQ 2017-07-06  
也可以试试PageOffice插件,觉得更简单点

相关推荐

    关于jxl操作excel说明以及jxl.jar包下载2.6

    JXL允许设置单元格的样式,如字体、颜色、对齐方式等。创建一个`WritableFont`或`WritableCellFormat`对象,然后在创建`Label`或`Number`对象时使用这些格式。 4. **处理公式**: 如果你需要在Excel文件中插入...

    JXL写入Excel (包括样式、列宽、列高特殊格式、剧中、字体等操作)

    本篇文章将深入探讨如何使用JXL进行Excel文件的写入操作,特别是关于样式、列宽、列高、对齐方式和字体设置。 首先,我们需要导入JXL库。在Java项目中,可以通过Maven或Gradle添加依赖。如果是Maven项目,可以在pom...

    java jxl创建Excel

    在本例中,我们将探讨如何使用JXL库来创建一个Excel文件,并对其进行各种定制,如合并单元格、设置列和单元格的属性,包括字体、宽度、高度、边框样式、背景颜色、自动换行以及对齐方式。 首先,我们需要引入JXL库...

    java中jxl操作excel.docx

    接着,通过`WritableCellFormat`类设置单元格的格式,包括对齐方式(如居中对齐)、边框样式、背景色等。 - 数字和日期格式化:虽然JXL在处理复杂数据类型上可能有限,但基本的字符串、数字和日期格式化通常能满足...

    java报表JXL和POI打印设置 java 生成excel 设置打印

    JXL 和 POI 是两个常用的库来操作Excel文件。其中,对于打印功能的支持是必不可少的一个环节。本文将详细介绍如何使用JXL 和 POI 库来设置打印选项,包括页面方向、缩放比例、边距调整等。 #### 一、JXL 设置打印 ...

    jxl.jar包(java导入导出Excel文件)

    - **操作单元格**:对单元格的内容、样式、公式进行修改,包括设置字体、颜色、背景色、对齐方式等。 - **处理数据类型**:支持数字、文本、日期等不同数据类型的读写,同时可以自定义数据格式。 - **图像与图表**:...

    通过java操作excel表格的工具类库jxl

     利用jExcelAPI可以修改已有的Excel文件,修改Excel文件的时候,除了打开文件的方式不同之外,其他操作和创建Excel是一样的。下面的例子是在我们已经生成的Excel文件中添加一个工作表:  //修改Excel的类,添加一...

    通过jxl.jar 读取、导出excel的实例代码

    使用`WritableCellFormat`对象可以定义单元格的样式,如对齐方式(水平和垂直)、字体、颜色等。例如,`format.setAlignment(Alignment.RIGHT)`将单元格内容右对齐,`format.setVerticalAlignment...

    很好的jxl样式

    2. **单元格样式**:使用`CellStyle`类来定义单元格的对齐方式(左对齐、居中、右对齐)、填充样式(背景颜色)、边框样式(线条类型、宽度、颜色)等。例如: ```java CellStyle style = workbook....

    jxl.jar api

    3. **样式和格式化**:jxl允许设置单元格的字体、颜色、对齐方式、边框等样式。这包括字体大小、颜色、加粗、斜体等,以及背景色、单元格边框样式和宽度。 4. **公式和计算**:库还支持Excel公式,可以读取含有公式...

    Excel数据操纵-jar包-jxl.jar

     利用jExcelAPI可以修改已有的Excel文件,修改Excel文件的时候,除了打开文件的方式不同之外,其他操作和创建Excel是一样的。下面的例子是在我们已经生成的Excel文件中添加一个工作表:  //修改Excel的类,添加一...

    jxl 使用文档

    4. **样式(Format)**: 定义单元格的显示格式,如字体、颜色、对齐方式等。 ### JXL的使用步骤 1. **创建工作簿对象**: 首先需要创建`Workbook`对象,可以使用`Workbook.createWorkbook()`方法新建一个空的工作簿...

    导入导出Java代码详解.doc

    使用 WritableCellFormat 对象设置单元格的格式,包括字体、颜色、对齐方式等。在本示例中,我们定义了两个单元格格式对象:cellTitle 和 cellResult,分别用于标题单元格和普通单元格。 四、设置单元格字体 使用 ...

    jxl资源包.rar

    这个“jxl资源包.rar”包含了你需要的一切,让你能够熟练地使用JXL来处理Excel文件,特别是关于设置字体样式和表格格式的部分。JXL库广泛支持Excel 97-2003的工作簿格式,这使得它在处理旧版Excel文件时非常有用。 ...

    POI入门教程

    6. **单元格样式**: 你可以创建并应用自定义的单元格样式,包括字体、颜色、对齐方式等。以下是一个设置单元格背景色的例子: ```java HSSFCellStyle headstyle = (HSSFCellStyle)wb.createCellStyle(); head...

Global site tag (gtag.js) - Google Analytics