package example_1;
import java.io.File;
import java.io.IOException;
import java.io.ObjectInputStream.GetField;
import java.awt.Color;
import java.awt.List; import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.format.Alignment;
import jxl.format.Colour;
import jxl.format.VerticalAlignment;
import jxl.write.Label;
import jxl.write.WritableCellFeatures;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableImage;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException; public class Xample_2 {
public static void main(String [] args)throws IOException,Exception,WriteException{
WritableWorkbook book = Workbook.createWorkbook(new File("C:\\Users\\Administrator\\Desktop\\monkey\\测试.xls")); //创建xls
WritableSheet sheet = book.createSheet("sheet1", 0); //创建工作表 WritableFont font = new WritableFont(WritableFont.createFont("宋体"),20,WritableFont.BOLD);//创建设置 (字体、加粗、字体大小)
WritableCellFormat wc = new WritableCellFormat(font); //将字体设置集合
/*
* 设置背景颜色
*/
wc.setBackground(Colour.SEA_GREEN); // 在集合中添加设置背景颜色
/*
* 设置居中
*/
wc.setAlignment(Alignment.CENTRE); //水平居中对齐
wc.setVerticalAlignment(VerticalAlignment.CENTRE); //竖直方向居中对齐 Label label = new Label(0, 0, "你好 java",wc); //将坐标位置,文本内容和字体模式和背景添加集合
/*
* 坐标位置、合并单元格和设置高度与宽度
*/
Label label1 = new Label(0, 1, "第一列第二行"); //坐标概念:第一个数值是列数 第二个数值是行数
Label label2 = new Label(1 ,0,"第二列第一行");
Label label3 = new Label(2, 0, "合并单元格里的内容"); sheet.setRowView(0,800); //设置第一行的 高度
sheet.setColumnView(3, 20); //设置四列的 宽度
sheet.mergeCells(2, 0, 2, 1); //合并单元格
sheet.addCell(label); //将集合内容输入到指定工作表
sheet.addCell(label1);
sheet.addCell(label2);
sheet.addCell(label3); //合并单元格后输入内容
/*
* 插入图片
*/
File file = new File("C:\\Users\\Administrator\\Desktop\\monkey\\123.png"); //准备路径图片文件,后缀名必须是png
WritableImage png = new WritableImage(0, 6, 3, 9, file); //设置插入图片位置与大小,第一个组合值是位置是坐标,第二个组合值是以第一个坐标为起点的长度和宽度的行列值。
sheet.addImage(png); //写入图片 book.write(); //写入
book.close(); //关闭 /*
* 读取xls表内容
*/
try{
Workbook workbook = Workbook.getWorkbook(new File("C:\\Users\\Administrator\\Desktop\\monkey\\测试.xls")); //获取文件路径
Sheet s = workbook.getSheet(0); //获取工作表
Cell cell = s.getCell(0,0); //获取指定表格位置
String result = cell.getContents(); //获取内容
System.out.println(result);
}catch(IOException e1){
e1.printStackTrace();
}catch (Exception e2) {
e2.printStackTrace();
} }
} /*
* 颜色翻译:
* BLACK 黑色
BLUE 蓝色
BLUE GREY 蓝灰色
BRIGHT GREEN 明亮的绿色
BROWN 棕色
CORAL 珊瑚
DARK BLUE 深蓝
DARK GREEN 深绿色
DARK PURPLE 深紫色
DARK_RED 深红
SEA GREEN 海上绿色
LIGHT BLUE 浅蓝 */

在xls和sheet已经存在的情况下输入数据:

public void exportXls(String name,Map<String, String> map,int i)throws Exception,IOException,WriteException {
Set<String> setkey = map.keySet();
Iterator<String> it = setkey.iterator();
File file = new File(workspace_path+"\\"+name+".xls");
WritableFont font = new WritableFont(WritableFont.createFont("宋体"),11,WritableFont.NO_BOLD);
WritableCellFormat wf = new WritableCellFormat(font);
wf.setAlignment(Alignment.CENTRE);
wf.setVerticalAlignment(VerticalAlignment.CENTRE);
WritableWorkbook book; //先声明WritableWorkbook (打开的Excel文件)
if(file.exists()){ //判断文件是否存在
Workbook book_1 = Workbook.getWorkbook(file); //Excel存在,获得Excel文件
WritableWorkbook bWorkbook= Workbook.createWorkbook(file,book_1);// 打开一个Excel的副本,并且指定数据写回到原文件
book = bWorkbook; //把打开的Excel副本传回
}else{
WritableWorkbook book_2 = Workbook.createWorkbook(file); //Excel不存在,创建文件,并且打开
book = book_2; //把打开的Excel传出
}
WritableSheet sheet1; //声明 一个WritableSheet (工作表)
if((book.getSheet(0))!=null){ //获取0位置上的工作表,并且判断是否不等于null。
WritableSheet sheet = book.getSheet(0); //不等于null,工作表存在,获取0位置上的工作表。
sheet1 =sheet; //把获取的工作表传出
}else {
WritableSheet sheet = book.createSheet("sheet1", 0); //等于null,工作表不存在,创建0位置上的工作表。
sheet1 = sheet; // 把获取的工作表传出
Label label1 = new Label(0,0,"用例名",wf); //输入第一行的标题栏信息
Label label2 = new Label(1,0,"运行结果",wf);
Label label3 = new Label(2,0,"异常输出",wf);
Label label4 = new Label(3,0,"开始时间",wf);
Label label5 = new Label(4,0,"结束时间",wf);
sheet1.addCell(label1);
sheet1.addCell(label2);
sheet1.addCell(label3);
sheet1.addCell(label4);
sheet1.addCell(label5);
}
while (it.hasNext()){ //输入内容
String str = (String)it.next();
String text = (String)map.get(str);
if(str.equals("01")){
Label label1_1 = new Label(0,1+i,text,wf);
sheet1.addCell(label1_1);
}else if(str.equals("02")){
Label label2_1 = new Label(1,1+i,text,wf);
sheet1.addCell(label2_1);
}else if(str.equals("03")){
Label label3_1 = new Label(2,1+i,text,wf);
sheet1.addCell(label3_1);
}else if(str.equals("04")){
Label label4_1 = new Label(3,1+i,text,wf);
sheet1.addCell(label4_1);
}else if(str.equals("05")){
Label label5_1 = new Label(4,1+i,text,wf);
sheet1.addCell(label5_1);
}
}
book.write();
book.close();
}

jxl 的详细用法说明的更多相关文章

  1. C#播放声音的四种方法 +AxWindowsMediaPlayer的详细用法

    C#播放声音的四种方法 第一种是利用DirectX 1.安装了DirectX SDK(有9个DLL文件).这里我们只用到MicroSoft.DirectX.dll和 Microsoft.Directx ...

  2. 在DOS下的DEBUG命令的详细用法

    在DOS下的DEBUG命令的详细用法 名称 解释 格式 a (Assemble) 逐行汇编 a [address] c (Compare) 比较两内存块 c range address d (Dump ...

  3. __declspec关键字详细用法

    __declspec关键字详细用法 __declspec用于指定所给定类型的实例的与Microsoft相关的存储方式.其它的有关存储方式的修饰符如static与extern等是C和C++语言的ANSI ...

  4. CString.Format的详细用法(转)

    CString.Format的详细用法(转) 在MFC程序中,使用CString来处理字符串是一个很不错的选择.CString既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串.CS ...

  5. IFRAM的详细用法

    IFRAM的详细用法:   IFRAM的详细用法:  <IFRAME>用于设置文本或图形的浮动图文框或容器. BORDER <IFRAME BORDER="3"& ...

  6. 【转】java.util.vector中的vector的详细用法

    [转]java.util.vector中的vector的详细用法 ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些 import java.uti ...

  7. DOM Style样式对象的详细用法

    DOM Style样式对象的详细用法 HTML Style样式比较复杂,相应访问.修改方法也有所差异.参考相关资料,整理如下. 典型Html文件如下,有三种定义方式. <head>     ...

  8. css基础之 font的简写规则 以及 自定义 CSS3 @font-face详细用法

    Part 1 font简写 CSS的命名规则是用英文字母 数字 和下划线(一般用小写)来命名.简写css font的好处有三:一是写起来方便(就像键盘快捷键):二是简化代码:三是帮助你熟悉和深刻理解c ...

  9. Tomcat详细用法学习(三)

    本篇接上一篇<Tomcat详细用法学习(二)>,主要讲解服务器所要求的web应用的组织结构. 上一篇说到了如何使用服务器将自己的web应用映射成虚拟目录,以便于在浏览器中可以对自己开发的w ...

随机推荐

  1. 基于Eclipse搭建hadoop开发环境

    一.基础环境准备 1.Eclipse 下载地址:http://pan.baidu.com/s/1slArxAP 2.JDK1.8  下载地址:http://pan.baidu.com/s/1i5iNy ...

  2. Java MyBatis insert数据库数据后返回主键

    <selectKey keyProperty="id" resultType="java.lang.Long" order="AFTER&quo ...

  3. SPI 核的寄存器空间

    SPI 核的寄存器空间 寄存器的地址与定义: 寄存器描述与配置: 复位寄存器: 控制寄存器: 状态寄存器: 数据发送寄存器: 在使用DTR之前,一定要经过复位处理. 对于DTR的操作中,首先写入com ...

  4. Row_number 详解

    SQL Server数据库ROW_NUMBER()函数的使用是本文我们要介绍的内容,接下来我们就通过几个实例来一一介绍ROW_NUMBER()函数的使用. 实例如下: 1.使用row_number() ...

  5. 通过U盘启动vmware虚拟机

    不能通过虚拟机的USB功能,而是通过硬盘映射功能实现,操作方法如下图. 1.添加硬盘,注意接口类型与启动系统的支持(XPPE不支持scsi,但10pe支持) 2.硬盘类型 3.选择U盘映射 4.按F2 ...

  6. 不可小视的String字符串

    String印象 String是java中的无处不在的类,使用也很简单.初学java,就已经有字符串是不可变的盖棺定论,解释通常是:它是final的. 不过,String是有字面量这一说法的,这是其他 ...

  7. 数据仓库3NF基础理论和实例

    一.引言 最近在梳理大数据模式下的数据仓库数据模型,花了点时间,系统的回顾一下传统数据仓库数据模型设计的理论,作为笔记分享给大家,很多资料来自互联网和读过的数据仓库理论和实践相关的熟悉,无剽窃之心,共 ...

  8. 将Word,PDF文档转化为图片

    #region 将Word文档转化为图片 /// <summary> /// 将Word文档转化为图片 /// </summary> /// <param name=&q ...

  9. 【springBoot】之配置文件application

    springboot使用一个全局的配置文件application.properties或者是application.yml,放在在src/main/recesources下或者在类路径下的/confi ...

  10. python3实现mysql导出excel

    Mysql中'employee'表内容如下: # __Desc__ = 从数据库中导出数据到excel数据表中 import xlwt import pymysql class MYSQL: def ...