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

摘要:
我还在互联网上找到了以下方法:CellViewcellView=newCellView();cellView。setAutosize;//设置自动尺寸表。setColumnView//根据contentlabel=newLabel自动设置列宽;床单addCell;以下是Excel的基本操作:设置背景、字体颜色、对齐方式、列宽等:请参见代码:1packagecom.java。演示;23导入java.io。文件4导入java.io。IOException;5导入jxl。工作簿;6导入jxl.format。对齐7导入jxl.format。边境8导入jxl.format。边框线型;9导入jxl.format。颜色10导入jxl.format。下划线样式;11导入jxl.format。垂直对齐;12importjxl.write。标签13导入xl.write。可写单元格格式;14importjxl.write。可写字体;15导入xl.write。可写表;16importjxl.write。可写工作簿;17导入xl.write。WriteException;18导入xl.write.bif。RowsExceedException;1920/**21*导出Excel实例:22*@authorAdministrator23*24*/25publicclassExcelDemo{2627/**28*@paramargs29*@throws IOException 30*@throws WriteException 31*@throws RowsExceedException 32*/33 public static void mainthrows IOException,RowsExcededException,WriteException{34//创建Excel工作簿;35WriteableWorkbook工作簿=工作簿.createWorkbook;3637//创建Excel工作薄;38WriteableSheetsheet=工作簿.createSheet;39//分别为第2列、第3列和第4列设置不同的宽度;40sheet.setColumnView;41sheet.setColumnView;42sheet.setRowView;43sheet.setColumnView;4445//设置工作表电子版本中所有列的默认列宽; 46页。getSetSetSetSettings().setDefaultColumnWidth;4748//设置字体;49WritableFontfont1=新可写字体;5051WriteCellFormatcellFormat1=新可写单元格格式;52//设置背景色;53cellFormat1.setBackground;54//设置边框;55cellFormat1.setBorder;56//设置换行;57cellFormat1.setWrap;58//设置文本中心对齐;59cellFormat1.setAlignment;60//设置垂直中心;61cellFormat1.setVerticalAlignment;62//创建单元格63Labell1=newLabel(0,0,“第一行中的第一个单元格(测试是否自动换行!

原文出处:http://zhouhaitao.iteye.com/blog/1842769

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

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

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

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

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

请看代码:

 1 package com.java.demo;
 2 
 3 import java.io.File;
 4 import java.io.IOException;
 5 import jxl.Workbook;
 6 import jxl.format.Alignment;
 7 import jxl.format.Border;
 8 import jxl.format.BorderLineStyle;
 9 import jxl.format.Colour;
10 import jxl.format.UnderlineStyle;
11 import jxl.format.VerticalAlignment;
12 import jxl.write.Label;
13 import jxl.write.WritableCellFormat;
14 import jxl.write.WritableFont;
15 import jxl.write.WritableSheet;
16 import jxl.write.WritableWorkbook;
17 import jxl.write.WriteException;
18 import jxl.write.biff.RowsExceededException;
19 
20 /**
21  * 导出Excel实例:
22  * @author Administrator
23  *
24  */
25 public class ExcelDemo {
26 
27     /**
28      * @param args
29      * @throws IOException 
30      * @throws WriteException 
31      * @throws RowsExceededException 
32      */
33     public static void main(String[] args) throws IOException, RowsExceededException, WriteException {
34         //创建Excel工作簿;
35         WritableWorkbook workbook = Workbook.createWorkbook(new File("C:/ExcelDemo.xls"));
36 
37         //创建Excel电子薄;
38         WritableSheet sheet = workbook.createSheet("第一个Sheet", 0);
39         //分别给2,3,4列设置不同的宽度;
40         sheet.setColumnView(1, 40);
41         sheet.setColumnView(1, 30);
42         sheet.setColumnView(2, 50);
43         sheet.setColumnView(3, 20);
44 
45         //给sheet电子版中所有的列设置默认的列的宽度;
46         sheet.getSettings().setDefaultColumnWidth(30);
47 
48         //设置字体;
49         WritableFont font1 = new WritableFont(WritableFont.ARIAL,14,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.RED);
50 
51         WritableCellFormat cellFormat1 = new WritableCellFormat(font1);
52         //设置背景颜色;
53         cellFormat1.setBackground(Colour.BLUE_GREY);
54         //设置边框;
55         cellFormat1.setBorder(Border.ALL, BorderLineStyle.DASH_DOT);
56         //设置自动换行;
57         cellFormat1.setWrap(true);
58         //设置文字居中对齐方式;
59         cellFormat1.setAlignment(Alignment.CENTRE);
60         //设置垂直居中;
61         cellFormat1.setVerticalAlignment(VerticalAlignment.CENTRE);
62         //创建单元格
63         Label label1 = new Label(0, 0, "第一行第一个单元格(测试是否自动换行!)",cellFormat1);
64         Label label2 = new Label(1, 0, "第一行第二个单元格",cellFormat1);
65         Label label3 = new Label(2, 0, "第一行第三个单元格",cellFormat1);
66         Label label4 = new Label(3, 0, "第一行第四个单元格",cellFormat1);
67         //添加到行中;
68         sheet.addCell(label1);
69         sheet.addCell(label2);
70         sheet.addCell(label3);
71         sheet.addCell(label4);
72         
73         //给第二行设置背景、字体颜色、对齐方式等等;
74         WritableFont font2 = new WritableFont(WritableFont.ARIAL,14,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.BLUE2);
75         WritableCellFormat cellFormat2 = new WritableCellFormat(font2);
76         cellFormat2.setAlignment(Alignment.CENTRE);
77         cellFormat2.setBackground(Colour.PINK);
78         cellFormat2.setBorder(Border.ALL, BorderLineStyle.THIN);
79         cellFormat2.setWrap(true);
80 
81         //创建单元格;
82         Label label11= new Label(0,  1, "第二行第一个单元格(测试是否自动换行!)",cellFormat2);
83         Label label22 = new Label(1, 1, "第二行第二个单元格",cellFormat2);
84         Label label33 = new Label(2, 1, "第二行第三个单元格",cellFormat2);
85         Label label44 = new Label(3, 1, "第二行第四个单元格",cellFormat2);
86 
87         sheet.addCell(label11);
88         sheet.addCell(label22);
89         sheet.addCell(label33);
90         sheet.addCell(label44);
91 
92         //写入Excel表格中;
93         workbook.write();
94         //关闭流;
95         workbook.close();
96     }
97 }

结果如下:

Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度(转)第1张

免责声明:文章转载自《Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度(转)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ES操作整理Crash日志解析下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

poi excel给单元格增加批注(包含SXSSF)及设置列类型

import org.apache.poi.xssf.usermodel.*; import java.io.FileOutputStream; import java.io.IOException; public class PoiAddComments { public static void main(String[] args) thr...

C# Excel导入导出

目录 1. 介绍:描述第三方类库NPOI以及Excel结构 2. Excel导入:介绍C#如何调用NPOI进行Excel导入,包含:流程图、NOPI以及C#代码 3. Excel导出:介绍C#如何调用NPOI进行Excel导出,包含:流程图、NOPI以、C#代码以及代码分析 4. 源码下载:展示运行图及源码下载  1. 介绍 1.1 第三方类库:NPOI...

.net iis excel导出问题

碰到几个问题的解决方法 1、当我远程服务器时才可以导出excel!!关闭了远程就不行。。。 解决:运行mmc -32组件服务 ->DCOM Config->Microsoft Excel Application->右键 属性Properties  ->标识Identity->下列用户This user->选择一个有权限的...

使用QtXlsx来读写excel文件

概述:QtXlsx是功能非常强大和使用非常方便的操作excel类库。包括对excel数据读写、excel数据格式设置及在excel里面根据数据生成各种图表。 下面重点介绍如何安装和使用QtXlsx。 一、获取QtXlsx。 1、通过下面地址获取:https://github.com/dbzhang800/QtXlsxWriter 2、得到的是包括源码、各种...

C# 标签打印示例 1

初次写博客,有哪些不足的地方,还请多多指点,给予建议,谢谢! 如若想要源码,请留言。 本实例是在Webservice 中通过excel做模板来打印标签。具体需求是:一个订单一页纸打印4行分录,如果超过4行,则再次按照原格式换纸打印,如果行数未满4行,则补空行。一、实现步骤: 1、首先在EXCEL 画好模版 (后缀名是 .xlt )2、在程序中调用EX...

avue+elementui中form中表单label调整

首先我用的bladex,前端采用elementui+avue来做的 需求:label内容过长,我要调整label宽度不至于让他换行 首先看了elementui的文档 发现没有效果,然后看了avue文档, 设置之后生效,但是始终不在一行,我在option属性中设置了:labelWidth:"120px;", 无论怎么调整。后面改成labelWidth:...